如何添加用于在tabbar视图控制器之间切换的转换

时间:2012-10-18 22:28:15

标签: iphone ios uitabbarcontroller uitabbar transition

我已将UITabBarViewController添加到我的应用中,并添加了五个ViewControllers。每个VCTabBarItems之一。所有这一切都很好。但是第三个view是由用户输入一些数据,所以我希望它被呈现为临时VC。临时VC的通常转换是crossdisolve。这会从底部开始VC

所以我的问题是如何在TabBarItems之间进行转换

1 个答案:

答案 0 :(得分:0)

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

-(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;
                }
}];

}