自定义leftBarButtonItem的右滑回退功能首页右滑界面卡死解决
2015-08-13 09:51
344 查看
iOS7开始是自带界面右滑回退功能的,但是有的时候如果需要自定义那个回退按键,就会去覆盖leftBarButtonItem,而此时iOS自带的右滑回退功能就失效了,此时如果想继续使用这个右滑回退功能,可以在tabBarController的navigationController中加入以下代码:
这样就可以避免卡死现象 ,后续的viewController也能够拥有右滑回退功能。
还有一个想法还没尝试,就是重写UIViewController,给它手动加上右滑回退功能,然后让需要右滑回退的viewController去继承它。
if ([self.navigationController respondsToSelector:@selector(interactivePopGestureRecognizer)]) { self.navigationController.interactivePopGestureRecognizer.delegate = nil; }去掉代理后,由navigationController去push的后续界面都可以右滑回退了,但是如果在navigationController页进行右滑的话就会导致界面卡死,此时可以手动加上左边界的右滑事件:
//首页从左滑动做右滑回退会有导致界面卡死 这里定义掉左边的右滑事件加以消除卡死现象 UIScreenEdgePanGestureRecognizer *leftEdgeGesture = [[UIScreenEdgePanGestureRecognizer alloc] initWithTarget:self action:@selector(handleLeftEdgeGesture:)]; leftEdgeGesture.edges = UIRectEdgeLeft; [self.view addGestureRecognizer:leftEdgeGesture];然后实现事件函数,不做任何操作即可:
- (void)handleLeftEdgeGesture:(UIScreenEdgePanGestureRecognizer *)gesture { //do nothing }
这样就可以避免卡死现象 ,后续的viewController也能够拥有右滑回退功能。
还有一个想法还没尝试,就是重写UIViewController,给它手动加上右滑回退功能,然后让需要右滑回退的viewController去继承它。
相关文章推荐
- 峰回路转,Firefox 浏览器即将重返 iOS 平台
- 峰回路转,Firefox 浏览器即将重返 iOS 平台
- 不可修补的 iOS 漏洞可能导致 iPhone 4s 到 iPhone X 永久越狱
- iOS 12.4 系统遭黑客破解,漏洞危及数百万用户
- 每日安全资讯:NSO,一家专业入侵 iPhone 的神秘公司
- [转][源代码]Comex公布JailbreakMe 3.0源代码
- js判断客户端是iOS还是Android等移动终端的方法
- IOS开发环境windows化攻略
- .net平台推送ios消息的实现方法
- 探讨Android与iOS,我们将何去何从?
- Android、iOS和Windows Phone中的推送技术详解
- IOS 改变键盘颜色代码
- Android和IOS的浏览器中检测是否安装某个客户端的方法
- javascript实现阻止iOS APP中的链接打开Safari浏览器
- iOS开发之路--微博OAuth授权_取得用户授权的accessToken
- ios通过按钮点击异步加载图片
- 加载带有手势识别器的XIB文件需注意哪些问题
- 仅需几行代码实现方便易用的状态栏指示器
- ios中图像进行压缩方法汇总