2014-10-31 33 views
3

我的應用程序有一個大問題。主要是在iOS 8上,因爲我們還沒有在其他iOS版本上找到它。當推送或彈出時,應用程序凍結在ios 8上

當推送到新的視圖控制器或彈出到先前的視圖控制器時,它有時會凍結。但奇怪的是,如果你按Home鍵並從後臺啓動應用程序。它會運行一點。在這裏,我的意思是新推出或彈出視圖控制器出現,但你仍然無法推動或彈出新的視圖控制器。


更新: 內存,CPU和磁盤使用都一切正常時,應用程序凍結。

+0

你有任何代碼共享周圍當它PUSH/POP和代碼,你在我過去發現viewDidLoad'的'喜歡有它有時'viewDidLoad'但看起來好像是在做推/流行的人呢?你有沒有碰撞報告?或控制檯輸出? – Popeye 2014-10-31 12:04:21

+0

@Popeye抱歉,該應用可能會凍結在任何頁面。所以沒有相關的代碼可以分享。 – sunkehappy 2014-10-31 12:07:18

+0

我們需要一些東西來縮小它,只是說它可能會使任何頁面崩潰,使我們更難以在沒有代碼的情況下給出答案。 – Popeye 2014-10-31 12:09:51

回答

16

我們最終解決了這個問題。原因是當視圖控制器堆棧只有1個視圖控制器時,我們還沒有禁用interactivePopGestureRecognizer。添加檢查將解決問題。見代碼下面。

- (void)navigationController:(UINavigationController *)navigationController 
     didShowViewController:(UIViewController *)viewController 
        animated:(BOOL)animate 
{ 
    if ([self respondsToSelector:@selector(interactivePopGestureRecognizer)]) 
    { 
     if (self.viewControllers.count > 1) 
     { 
      self.interactivePopGestureRecognizer.enabled = YES; 
     } 
     else 
     { 
      self.interactivePopGestureRecognizer.enabled = NO; 
     } 
    } 
} 
+0

謝謝你的回答。你保存我的工作。 :) – 2016-09-26 11:21:36

相關問題