如何减慢 UINavigationController 向后滑动动画?

Posted

技术标签:

【中文标题】如何减慢 UINavigationController 向后滑动动画?【英文标题】:How can I slow down UINavigationController's swipe back animation? 【发布时间】:2013-12-13 15:14:17 【问题描述】:

因此,ios 7 中引入的 UINavigationController 的滑动返回功能在动画结束时有一个恼人的“snap”。作为用户,这对我来说真的很刺耳,我觉得如果可以修改动画,那么感觉可能会好一些。

例如 Instagram 于 2013 年 12 月 12 日的更新。他们以某种方式减慢了滑动动画,使其感觉更加流畅。这需要完全自定义的功能,还是有办法劫持 UINavigationController 的现有功能?如何实现?

编辑

好的,所以我知道自定义过渡是可行的方法。但是,我对如何实现它们感到困惑。我看过几个委托方法的引用,但没有关于如何实现自定义动画的明确示例。有人可以提供一个基本示例,专门用于覆盖 UINavigationController 的推送/弹出动画吗?

【问题讨论】:

查看 UINavigationControllerDelegate 上的“支持自定义过渡动画” - developer.apple.com/library/IOs/documentation/UIKit/Reference/…:有很多关于这个主题的教程和一些 WWDC 视频。 【参考方案1】:

是的,您可以创建自己的交互式过渡来完全自定义它们的工作方式!

我在 Ray Wenderlich 的“iOS 7 By Tutorials”PDF 中遵循了相当不错的教程。

我也有一个快速的谷歌,这可能会有所帮助:http://www.doubleencore.com/2013/09/ios-7-custom-transitions/

【讨论】:

一个警告 - 横向自定义过渡目前在 iOS7 中相当糟糕。我建议要么坚持使用纵向,要么至少等待 iOS7.1 再实施。更多关于景观问题的信息:blog.spacemanlabs.com/2013/11/…

以上是关于如何减慢 UINavigationController 向后滑动动画?的主要内容,如果未能解决你的问题,请参考以下文章

如何延迟/减慢 UIScrollView 平移速度

如何减慢关键帧动画?

如何减慢 GNU Radio 中的文件源?

如何减慢postgresql服务器的速度?

如何减慢 UINavigationController 向后滑动动画?

如何知道哪些事件减慢了setTimeout?