您的位置:首页 > 移动开发 > IOS开发

iOS侧滑返回上一级界面

2015-09-28 14:47 417 查看
- (id)initWithRootViewController:(UIViewController *)rootViewController
{

self = [super
initWithRootViewController:rootViewController];

if (self) {

id target =
self.interactivePopGestureRecognizer.delegate;

UIPanGestureRecognizer *pan = [[UIPanGestureRecognizer
alloc] initWithTarget:target
action:@selector(handleNavigationTransition:)];

//
设置手势代理,拦截手势触发
pan.delegate =
self;

[self.view
addGestureRecognizer:pan];

//
禁止使用系统自带的滑动手势

self.interactivePopGestureRecognizer.enabled =
NO;

}

return
self;
}

// 什么时候调用:每次触发手势之前都会询问下代理,是否触发。

// 作用:拦截手势触发
- (BOOL)gestureRecognizerShouldBegin:(UIGestureRecognizer *)gestureRecognizer
{

if (_stopBack ==
YES) {//是否允许返回

return NO;
}

//
注意:只有非根控制器才有滑动返回功能,根控制器没有。

//
判断导航控制器是否只有一个子控制器,如果只有一个子控制器,肯定是根控制器

if (self.
childViewControllers.count == 1) {

//
表示用户在根控制器界面,就不需要触发滑动手势,

return NO;
}

return
YES;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: