我有一个TabBarController有3个navigationController,其中每个都有一个相应的viewController:AViewController,BViewController和CViewController。首先一个有我想用viewDisappears时针对它运行的动画一个UIView元素:ViewBrowler动画前Tabbar点击
UIView.animateWithDuration(duration, delay: 0.0, options: .CurveEaseOut, animations: {
期间
...
override func viewWillDisappear(animated: Bool) {
如果用户点击中的TabBar项目2或3,我想该动画首先发生,然后将用户带到项目#2或#3。
问题是,当用户点击一个不同的项目,在TabBarController此代码首先触发在我的ViewController一个
override func tabBar(tabBar: UITabBar, didSelectItem item: UITabBarItem) {
的viewwillDisappears前,然后我的动画不运行。
我应该在哪里放置我的动画,以便在用户转到tabbar中的其他项目之前运行它?
只要一想到同样的事情,创造一个[测试项目(https://www.dropbox.com/sh/7nol96ivkb6a8ik/AAD5JcHFeI-XgoOvp1JrlY_-a?dl = 0)供OP使用。 – ozgur