减缓Push Segue的过渡

时间:2016-04-14 00:35:21

标签: ios swift uiviewcontroller segue uistoryboardsegue

我想知道是否有办法减速'推送segue&回'喜欢Tinder& Snapchat确实如此。它像普通的segue一样,但它以某种方式缓慢地转变。

我通常在Storyboard上设置推送通知并以编程方式调用segue (点击NavBarItem并推送到新的UIViewController)来处理推送segues:

func settingsTapped() {
    performSegueWithIdentifier("NewsToSettings", sender: nil)
}

有一种方法

  • 启用整个应用程序全局减慢segue?

  • 或者我应该为每个segue做些什么?如果是这样,那么适当的方式是什么?

1 个答案:

答案 0 :(得分:3)

  

我想知道是否有办法减速'推送segue&回'喜欢Tinder& Snapchat确实如此。它像普通的segue一样,但它以某种方式缓慢地转变。

正如您所说,您只需编写自定义过渡动画。为导航控制器提供委托并实施navigationController:animationControllerForOperation:fromViewController:toViewController:。基本上,您只需提供一个实现UIViewControllerAnimatedTransitioning协议的对象。作为其中一部分,您可以指定动画持续时间。

  

为整个应用程序启用全局减慢segue?

如果所有导航控制器都具有相同的委托,或者所有委托都提供相同的UIViewControllerAnimatedTransitioning对象,则所有推/弹转换都将使用相同的代码并以相同的方式工作。