iOS之input file调用相册控制器消失跳转到登陆页
Posted Caersi
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了iOS之input file调用相册控制器消失跳转到登陆页相关的知识,希望对你有一定的参考价值。
最近在做一个app要用到H5,其中有一个需求是要点击H5的的控件弹出系统相册,通过在H5的input file 中定义<input type="file" class="ios_only" accept="image/*" capture="camera">调用系统相册时虽然可以弹出如下的alertView
但是当点击相册时却相册,反而是跳转到登陆面,查看控制台发现发现报了如下的错误:
根据字面意思理解为我的四个控制的主控制器TabBarControllerViewController不在keywindow的视图层级里面,可能是因为这个原因当系统的alertView跳出后因根控制器不是当前控制器所以就崩溃,挑战到初始的根控制器,后来更改了keywidow的rootViewController为TabBarControllerViewController就可以了。如下图所示:
有什么疑问可以联系我的QQ547769931
另外根据和某位网友的聊天发现还可以有第二种方法解决这个问题(本人没试过,上面方法不行的话可以试试这个方法),方法很简单就是让要要装载H5页面的控制器继承自一个父控制器,并重写里面的模态方法,方法如下,其本质是拦截掉回退:
//写一个父类 ,继承 -(void)dismissViewControllerAnimated:(BOOL)flag completion:(void (^)(void))completion { if ( self.presentedViewController) { [super dismissViewControllerAnimated:flag completion:completion]; } }
以上是关于iOS之input file调用相册控制器消失跳转到登陆页的主要内容,如果未能解决你的问题,请参考以下文章