我的應用程序有一個大問題。主要是在iOS 8上,因爲我們還沒有在其他iOS版本上找到它。當推送或彈出時,應用程序凍結在ios 8上
當推送到新的視圖控制器或彈出到先前的視圖控制器時,它有時會凍結。但奇怪的是,如果你按Home鍵並從後臺啓動應用程序。它會運行一點。在這裏,我的意思是新推出或彈出視圖控制器出現,但你仍然無法推動或彈出新的視圖控制器。
更新: 內存,CPU和磁盤使用都一切正常時,應用程序凍結。
我的應用程序有一個大問題。主要是在iOS 8上,因爲我們還沒有在其他iOS版本上找到它。當推送或彈出時,應用程序凍結在ios 8上
當推送到新的視圖控制器或彈出到先前的視圖控制器時,它有時會凍結。但奇怪的是,如果你按Home鍵並從後臺啓動應用程序。它會運行一點。在這裏,我的意思是新推出或彈出視圖控制器出現,但你仍然無法推動或彈出新的視圖控制器。
更新: 內存,CPU和磁盤使用都一切正常時,應用程序凍結。
我們最終解決了這個問題。原因是當視圖控制器堆棧只有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;
}
}
}
謝謝你的回答。你保存我的工作。 :) – 2016-09-26 11:21:36
你有任何代碼共享周圍當它PUSH/POP和代碼,你在我過去發現viewDidLoad'的'喜歡有它有時'viewDidLoad'但看起來好像是在做推/流行的人呢?你有沒有碰撞報告?或控制檯輸出? – Popeye 2014-10-31 12:04:21
@Popeye抱歉,該應用可能會凍結在任何頁面。所以沒有相關的代碼可以分享。 – sunkehappy 2014-10-31 12:07:18
我們需要一些東西來縮小它,只是說它可能會使任何頁面崩潰,使我們更難以在沒有代碼的情況下給出答案。 – Popeye 2014-10-31 12:09:51