2

我想制作一个类似于导航控制器的弹出和推送动画的 UITabBarController 选项卡切换动画。

这意味着如果我选择当前选项卡左侧的选项卡,新视图控制器的视图从左侧移入屏幕,旧/当前视图控制器的视图向右移出屏幕(类似于弹出)。

我目前只能做到这一点,但我不知道如何实现滑入/滑出效果。

谢谢!

-(BOOL)tabBarController:(UITabBarController *)tabBarController shouldSelectViewController:(UIViewController *)viewController:

    UIView *fromView = tabBarController.selectedViewController.view;
    NSInteger fromIndex = tabBarController.selectedIndex;
    UIView * toView = [viewController view];
    NSInteger toIndex = [[tabBarController viewControllers] indexOfObject:viewController];

    [UIView transitionFromView:fromView
                        toView:toView
                      duration:0.3
                       options:UIViewAnimationOptionTransitionCrossDissolve
                    completion:^(BOOL finished) {
                        if (finished) {
                            tabBarController.selectedIndex = toIndex;
                        }
                    }];
}
4

0 回答 0