我的应用程序有一个大问题。主要是在 iOS 8 上,因为我们在其他 iOS 版本上没有发现这一点。
当推送到新的视图控制器或弹出到以前的视图控制器时,它有时会冻结。但奇怪的是,如果您按主页按钮并从后台启动应用程序。它会运行一点。这里我的意思是出现了新的推送或弹出的视图控制器,但您仍然无法推送或弹出新的视图控制器。
update:应用卡顿时,内存、CPU、磁盘使用情况均正常。
我们终于解决了这个问题。原因是我们没有禁用interactivePopGestureRecognizer
当视图控制器堆栈只有 1 个视图控制器时。添加检查即可解决问题。请参阅下面的代码。
- (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;
}
}
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)