导航栏控制器View上自带了侧滑返回的手势,不过触发范围只能在左边
导航控制器自带的滑动手势为:interactivePopGestureRecognizer
我的项目中全局使用的是自定义的导航控制器,通过以下几行简单的代码就能实现导航控制器滑动返回效果
首先:让我的导航控制器遵守滑动手势协议:UIGestureRecognizerDelegate 在push前做一些操作 遵守导航控制器协议UINavigationControllerDelegate
设置手势
self.interactivePopGestureRecognizer.delegate = self;
判断是否可以侧滑返回,我这里是子控制器个数大于1手势才侧滑返回
- (BOOL)gestureRecognizerShouldBegin:(UIGestureRecognizer *)gestureRecognizer {
if (self.viewControllers.count <= 1) {
return NO;
}
return YES;
}