zoukankan      html  css  js  c++  java
  • 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];
        }
    }
  • 相关阅读:
    [转]编程能力与编程年龄
    github for windows 使用
    github 改位置
    Linux下设置和查看环境变量
    Docker基础 :网络配置详解
    docker入门实战笔记
    Jenkins +Maven+Tomcat+SVN +Apache项目持续集成构建
    使用nsenter工具进入Docker容器
    Docker从入门到实战(四)
    Docker从入门到实战(三)
  • 原文地址:https://www.cnblogs.com/Caersi/p/5827923.html
Copyright © 2011-2022 走看看