界面出现卡死状态右滑恢复正常

最近写的新需求,首页测试说偶现会卡死,无法进行操作,查了好久原因,最后定位为右滑返回,但是没有上级界面造成界面卡死。

解决办法:禁止首页的右滑返回

- (void)viewDidAppear:(BOOL)animated {
    [super viewDidAppear:animated];
    self.isCanSideBack = NO;
   //关闭ios右滑返回
   if([self.navigationControllerrespondsToSelector:@selector(interactivePopGestureRecognizer)]) {
      self.navigationController.interactivePopGestureRecognizer.delegate=self;
   }
}

- (BOOL)gestureRecognizerShouldBegin:(UIGestureRecognizer*)gestureRecognizer {
     return self.isCanSideBack;
}

离开的时候开启

- (void)viewDidDisappear:(BOOL)animated {
  [superviewDidDisappear:animated];
  [self resetSideBack];
}
/**
*恢复边缘返回
*/
- (void)resetSideBack {
  self.isCanSideBack=YES;
  //开启ios右滑返回
  if([self.navigationControllerrespondsToSelector:@selector(interactivePopGestureRecognizer)]) {
    self.navigationController.interactivePopGestureRecognizer.delegate = nil;
  }
}
posted @ 2017-07-03 17:29  的比一郎  阅读(291)  评论(0编辑  收藏  举报