2014-11-03 181 views
1

我正在使用科尔多瓦与我的iOS8应用程序。我尝试加载一个网页,在这个网页中,我进一步导航到选择元素,比如下拉菜单,显示为弹出窗口。当我尝试在各种选择元素之间随机切换时,该应用程序崩溃并出现以下错误。iOS8科尔多瓦问题

终止应用程序由于未捕获的异常“NSGenericException”, 原因:“UIPopoverPresentationController ()应具有非零 sourceView或barButtonItem呈现发生之前设置”。

它看起来像选择单元控制器分离,并不能得到回应用控制,因为它的它crashes.On搜索,我猜是因为在iOS8上改变行为UIPopoverPresentationController的问题,但任何人都可以建议如何在iOS8中使用cordova库修复它?该应用程序工作正常,直到iOS7。

+0

这是一个[科尔多瓦错误](https://issues.apache.org/jira/i#browse/CB-7694),它仍有打开状态 – turtle 2014-11-03 10:28:00

+0

还要检查这个【答案】(HTTP:/ /stackoverflow.com/a/25644145/3419997) – turtle 2014-11-03 10:31:19

回答

3

我使用以下解决方法修复了它。没有其他人似乎能够工作。这是一个报告的苹果错误。

-(void)presentViewController:(UIViewController *)viewControllerToPresent animated:(BOOL)flag completion:(void (^)(void))completion 
{ 
    dispatch_after(dispatch_time(DISPATCH_TIME_NOW, NSEC_PER_USEC), dispatch_get_main_queue(), 
       ^{ 
        [super presentViewController:viewControllerToPresent animated:flag completion:completion]; 
       }); 
} 
+0

这为我工作奇迹。而对于任何不知道这段代码应该放在哪里的人,我只是将它添加到_MainViewController_的'@ implementation'中,它在_MainViewController.m_ – munkychop 2015-02-04 14:43:02

+0

之内。然而,这个问题仍然是随机发生的。这很少。当我旋转iPad的方向时,有时突然变得不可见。 – 2015-05-06 06:30:50