iOS侧滑返回三种实现方式及优劣比较

现在开发的APP项目中,如果没有实现侧滑返回的功能,都不好意思拿出来秀~

虽然官方提供了侧滑返回的API,但是很多开发者追求全屏侧滑返回,觉得官方提供的不够用。

想必大多数开发者都知道如何实现侧滑返回,今天,我们就来总结一下。

三种方法:

方法1:系统自带的侧滑返回

方法2:【8行代码教你搞定导航控制器全屏滑动返回效果】 |那些人追的干货

方法3:百度知道团队出品的全屏侧滑返回(github地址)


方法一实现(系统方法):

方法一实现截图

优点:实现简单,导航控制器中对全体viewController的侧滑功能可控,系统API绝对安全可靠,无手势冲突

缺点:侧滑范围局限于左侧

适用需求:只需左侧小范围触发侧滑时的首选实现方案。

注:以上代码是强制开启,而系统的侧滑是默认开启的,如果在某一界面 hidesBackButton,那么系统是禁止当前界面的侧滑返回。

如果实现了以上代码,属于强制开启,那么就算当前界面hidesBackButton,侧滑功能一样开启,通过上面的代理方法可以做到灵活控制哪个界面是否开启侧滑。


方法二实现(并不完美的全屏侧滑):

方法二实现截图

优点:最简洁的全屏侧滑实现,导航控制器中对全体viewController的侧滑功能可控

缺点:从右边忘左边划动也能触发侧滑操作,有手势冲突,并不完美。且调用官方私有API

另外:正是缺点的所在,和Cell的侧滑删除手势也是有冲突的,也就是说,免不了需要解决手势的冲突。

适用需求:最好不用,毕竟缺点明显。(不过这个实现思路,确实值得称赞!)


方法三实现(集成最简单、功能最全面):

去上面的链接地址下载DEMO,具体详情见github

使用截图

优点:最全面的全屏侧滑实现,集成超简单,全体viewController的侧滑功能可控,不过得在ViewController内部去控制,稍微麻烦一点;另外,百度知道团队在维护该DEMO,功能会越来越完善,花样更多。

缺点:调用官方私有API(不过已有上线作品,不影响上线,缺点可以忽略!)

适用需求:目前最好的全屏侧滑实现方案。


以上为亲测后的感受,希望对大家有所帮助!

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

推荐阅读更多精彩内容

  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 12,282评论 4 61
  • 哦,蔷薇,原来你叫蔷薇 这是我第一次遇到你 可我这固执的人,却似乎为你痴迷 因为我发觉我的心墙綻放一朵紫色蔷薇 接...
    淺笑大大阅读 440评论 0 0
  • 《守侯》 文/白传英 小时候 您就像春天 我们围拢在您身边 您用春风把我们浇灌 长大后 您像夏天 把我们带...
    白清风阅读 176评论 0 0