iOS 8.0-8.2系统的UIWebView对H5的<select>标签的兼容性问题

1、问题描述:

由于快速多次点击H5中的下拉选择菜单,导致APP崩溃,xcode日志输出面板中输出:

ErrorName:NSGenericException

ErrorReason:UIPopoverPresentationController (<UIPopoverPresentationController: 0x42b09980>) should have a non-nil sourceView or barButtonItem set before the presentation occurs.

ErrorDesc:UIPopoverPresentationController (<UIPopoverPresentationController: 0x42b09980>) should have a non-nil sourceView or barButtonItem set before the presentation occurs.


2、解决方法

在控制器中添加如下代码即可解决

-(void)presentViewController:(UIViewController*)viewControllerToPresent animated:(BOOL)flag completion:(void(^)(void))completion

{

    if ([[[UIDevice currentDevice] systemVersion] floatValue]<9.0) 

    {

       if (viewControllerToPresent.popoverPresentationController && !viewControllerToPresent.popoverPresentationController.sourceView)

        {

            return;

        }

    }

[superpresentViewController:viewControllerToPresentanimated:flagcompletion:completion];

}

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容