苹果侧边滑动返回_iOS系统右滑返回手势问题及解决方案

本文探讨了iOS7后引入的侧边滑动返回功能及其常见问题,包括手势失效、冲突和应用Crash等。通过设置navigationItem的属性可能导致原生手势失效。解决方法建议使用拦截手势代理回调,既能解决各种问题,又允许自定义返回按钮,并适用于混合式开发。关键代码涉及设置手势识别器的代理和启用状态。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在iOS7之后,苹果推出了手势滑动返回功能,也就是从屏幕左侧向右滑动可返回上一个界面。大大提高了APP在大屏手机和iPad上的操作体验,场景切换更加流畅。

常见的问题有:

1.右滑手势失效

2.右滑手势与其他手势冲突

3.右滑手势导致应用 Crash

4.右滑手势的开启与关闭

了解一下 navigationItem 的几个属性

hidesBackButton - 是否隐藏原生返回按钮,当前控制器设置,当前控制器有效

backBarButtonItem - 当前控制器设置,下一级控制器生效

leftBarButtonItem - 当前控制器设置,当前控制器生效

leftBarButtonItems - 当前控制器设置,当前控制器生效

leftItemsSupplementBackButton - 在leftBarButtonItem设置之后,再设置该属性可以控制backBarButtonItem的被覆盖状态

系统原生的右滑返回是OK的,但如果设置了 hidesBackButton 、 backBarButtonItem 、 leftBarButtonItem 、 leftBarButtonItems 几个属性,原生的右滑返回手势就会失效。

关于解决方式网上给了很多,但涉及到具体项目觉得使用拦截手势代理回调的方式最为合理。

其一,可以很便捷地解决右滑失效、手势冲突、右滑 Crash 等问题

其二,返回按钮你可以随意自定义

其三,在混合式开发中,可以在拦截的代理回调中给 web 跳转也增加逐级返回体验

关键代码如下 ,详见 Demo

self.navigationC

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值