0
点赞
收藏
分享

微信扫一扫

关闭导航的Pop手势

前言:例如我们有两个控制器A和B, 从A界面调转到B界面(iOS7--系统自带的向右滑动手势返回上一个界面), 也就是我们在B接面的最左测有个边缘手势, 通过滑动可以返回到A界面;

1.关闭导航手势的实例:

例如我们A界面的导航条隐藏, 调转到B界面,B界面的导航条不隐藏, 这事我们在B界面的左边缘滑动B界面,不要让它回到A界面(滑动不超过屏幕宽度的1/2), 这时你会发现B界面的导航条消失.

2.解决上述问题的方案:

1.首先我们看一下手势在文档中的定义:

@property(nullable, nonatomic, readonly) UIGestureRecognizer *interactivePopGestureRecognizer NS_AVAILABLE_IOS(7_0) __TVOS_PROHIBITED;

2.我们再看看UIGestureRecognizer在文档中的定义

@interface UIGestureRecognizer : NSObject
@property(nonatomic, getter=isEnabled) BOOL enabled;  // default is YES. disabled gesture recognizers will not receive touches. when changed to NO the gesture recognizer will be cancelled if it's currently recognizing a gesture

3.看完之后我会发现:

默认状态下有边缘手势的
所以我们应该在B控制中这样写:
- (void)viewDidLoad {
[super viewDidLoad]; 
 self.navigationController.interactivePopGestureRecognizer.enabled = NO;
 }

总结:问题解决分享给大家希望给有需要的人帮助!

举报

相关推荐

0 条评论