[英]UINavigationController push / pop bug on iOS 7.x when app is running in the background
[英]App freeze on ios 8 when push or pop
我的应用程序有一个大问题。 主要在iOS 8上,因为我们还没有在其他iOS版本上找到它。
当推送到新的视图控制器或弹出到前一个视图控制器时,它有时会冻结。 但奇怪的是,如果你按下主页按钮并从后台启动应用程序。 它会运行一点。 在这里,我的意思是新推出或弹出的视图控制器出现,但你仍然无法推或弹出新的视图控制器。
更新:应用程序冻结时内存,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;
}
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.