Iphone 如何添加用于在选项卡栏视图控制器之间切换的转换

Iphone 如何添加用于在选项卡栏视图控制器之间切换的转换,iphone,ios,uitabbarcontroller,uitabbar,transition,Iphone,Ios,Uitabbarcontroller,Uitabbar,Transition,我在我的应用程序中添加了uitabarviewcontroller,并添加了五个viewcontroller。将每个VC添加到其中一个tabbarItem。所有这些都很有效。但是对于第三个视图是为用户输入一些数据而创建的,所以我希望它显示为临时VC。临时VC的通常转换是crossdissolve。这将使VC从底部向上移动 因此,我的问题是如何制作TabBarItems之间转换的动画我使用这个函数,该函数接收目标视图的索引。我将添加此函数作为子视图控制器调用的父视图控制器的一部分。这取决于你 -(

我在我的应用程序中添加了
uitabarviewcontroller
,并添加了五个
viewcontroller
。将每个
VC
添加到其中一个
tabbarItem
。所有这些都很有效。但是对于第三个
视图
是为用户输入一些数据而创建的,所以我希望它显示为临时
VC
。临时
VC
的通常转换是crossdissolve。这将使
VC
从底部向上移动


因此,我的问题是如何制作TabBarItems之间转换的动画

我使用这个函数,该函数接收目标视图的索引。我将添加此函数作为子视图控制器调用的父视图控制器的一部分。这取决于你

-(void) animateTabBarTransition:(NSInteger) destinationTabIdx{
   UIView * fromView = self.tabBarController.selectedViewController.view;
   UIView * toView = [[self.tabBarController.viewControllers objectAtIndex:destinationTabIdx] view];

  [UIView transitionFromView:fromView toView:toView duration:0.8
    options:(destinationTabIdx > self.tabBarController.selectedIndex ? UIViewAnimationOptionTransitionFlipFromLeft: UIViewAnimationOptionTransitionFlipFromRight)
            completion:^(BOOL finished) {
                if (finished) {
                    self.tabBarController.selectedIndex = destinationTabIdx;
                }
}];
}

可能存在的副本