iOS开发 PushViewController卡死或者popViewController时候卡死的可能原因之一
2018-01-24 10:43
525 查看
当点击后push界面时候,界面没有反应,同时表现出整个界面像是卡住,但是通过层级关系图可以看出来要push界面的view的那些东西都已经出现,这时候可以考虑一下是手势冲突或者view的遮盖,我这边的是因为自定义了UINavigationController,所以设置了系统代理添加右滑退出手势的时候,没有禁用第一个控制器的手势,导致平时操作时候偶现界面卡死,我的解决的方法是在自定义的导航栏控制器里重新push方法和pop方法:
push方法
-(void)pushViewController:(UIViewController *)viewController animated:(BOOL)animated{
self.interactivePopGestureRecognizer.enabled = YES;
viewController.hidesBottomBarWhenPushed = YES;
[super pushViewController:viewController animated:animated];
}
pop方法
- (UIViewController *)popViewControllerAnimated:(BOOL)animated{
self.interactivePopGestureRecognizer.enabled = YES;
return [super popViewControllerAnimated:animated];
}
不管是push或者pop方法都启用了右滑手势,然后在你第一个控制器里设置禁用右滑手势
self.navigationController.interactivePopGestureRecognizer.enabled = NO;
这是我解决的办法,如果有更简单的方法,欢迎指教
push方法
-(void)pushViewController:(UIViewController *)viewController animated:(BOOL)animated{
self.interactivePopGestureRecognizer.enabled = YES;
viewController.hidesBottomBarWhenPushed = YES;
[super pushViewController:viewController animated:animated];
}
pop方法
- (UIViewController *)popViewControllerAnimated:(BOOL)animated{
self.interactivePopGestureRecognizer.enabled = YES;
return [super popViewControllerAnimated:animated];
}
不管是push或者pop方法都启用了右滑手势,然后在你第一个控制器里设置禁用右滑手势
self.navigationController.interactivePopGestureRecognizer.enabled = NO;
这是我解决的办法,如果有更简单的方法,欢迎指教
相关文章推荐
- iOS开发在popView的时候出现错误
- iOS开发小技巧--学会包装控件(有些view的位置由于代码或系统原因,位置或者尺寸不容易修改或者容易受外界影响)
- pop 或者push一个viewController时候 会有键盘闪现出来 又消失
- iOS 当使用FD_FullscreenPopViewController的时候遇到scrollView右滑手势无法使用的解决
- 解决 iOS ViewController Push或者Pop 时的黑影
- iOS开发 presentModalViewController ,dismiss 与 push ,pop
- iOS presentViewController的时候有卡顿或延迟
- 关于IOS开发中的viewController的viewWillAppear 和viewDidAppear 等调用的总结
- iOS:iPad和iPhone开发的异同(UIPopoverController、UISplitViewController)
- 2011斯坦福大学iOS应用开发教程学习笔记(第八课)viewController生命周期
- 【iOS开发】获取当前view(视图)所在的Controller(控制器)
- iOS开发之基类BaseViewController和BaseTableViewController应该做哪些事情
- iOS开发手记 - iOS9.3 UINavigationController添加后不显示storyboard中viewcontroller里的控件的解决方法
- iOS开发中ViewController的页面跳转和弹出模态
- IOS 开发学习十九 二维码扫描-QRCodeReaderViewController
- iOS开发之UITabBarController和UICollectionView的使用
- ios开发中viewcontroller之间的跳转
- iOS有关pop到self.navigationController.viewControllers以外的界面
- iOS 开发中,同一个界面上不宜存在太多 ViewController
- iOS开发--ChildViewController实现订单页的切换