iOS开发 PushViewController卡死或者popViewController时候卡死的可能原因之一

iOS开发 Xcode 专栏收录该内容
2 篇文章 0 订阅

当点击后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;


这是我解决的办法,如果有更简单的方法,欢迎指教

  • 0
    点赞
  • 3
    评论
  • 0
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

相关推荐
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值