IOS 小常识--1.系统自带的右滑返回

IOS 小常识

1:系统自带的右滑返回(ios 7.0 版本以上有效)

系统的右滑返回功能其实是系统自带的功能,在不自定义的导航条返回按钮的时候。如果想自定义返回按钮,还想要保留这个功能的话。很简单,只要一行代码就可以搞定:

//令自身右滑返回

sender.navigationController.interactivePopGestureRecognizer.delegate = (id)sender;

易错点:

1.有的朋友看了上面的东西之后,直接就写了代码进工程,一切正常。结果在根视图上乱划掉时候,卡死……。

原因:都根视图了你还划个啥?

解决方法:同样一句代码搞定 self.navigationController.interactivePopGestureRecognizer.enabled = NO;

小提示:此属性使用时,不用在每个自定义的子视图中都这样写,在根视图上这样写就行了。否则每个页面都加的话,看着就胃疼。建议写在方法- (void)viewDidAppear:(BOOL)animated;与- (void)viewDidDisappear:(BOOL)animated;中。

例子:在一个tabbar页面中有3个带导航条的子视图,每个子视图要转换的页面的返回按钮都需要自定义。那么,只要把下面这些代码拖进工程相应根视图的页面就行。

- (void)viewDidDisappear:(BOOL)animated{

[super viewDidDisappear:animated];

self.navigationController.interactivePopGestureRecognizer.enabled = YES;

//令自身右滑返回

self.navigationController.interactivePopGestureRecognizer.delegate = (id)self;

}

- (void)viewDidAppear:(BOOL)animated{

[super viewDidAppear:animated];

self.navigationController.interactivePopGestureRecognizer.enabled = NO;

}

结尾语:现在基本上都i7以上了,不过可能就是会遇到原生功能处理不了的情况。在这种情况下,就只能自己写了,这也是没办法的事。不过如果对这方面的要求不是那么苛刻的话,或者是想自己研究加深对这东西的认识的话。系统自带的基本就够用了,自己写不过是自找麻烦而已。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容