0

私はiOSの初心者なので、それで質問を判断してください。

使用するコードがあります。コードには、FSVerticalTabBarControllerから継承された垂直タブバーコントローラーがあります。このタブバーコントローラーを使用して、ビューコントローラーを切り替えます。

私が欲しいのは、ビューコントローラーにアニメーションを考えさせることです。どんな種類のデフォルトのアニメーションでも構いません。どうやってやるの?ここにコードがあります、そしてあなたの助けに感謝します:

    @implementation AIVerticalTabBarController

@synthesize appDelegate;

- (void)viewDidLoad
{
    [super viewDidLoad];

    [self setDelegate:self];

    [[self tabBar] setBackgroundColor:[UIColor darkGrayColor]];

    NSArray *titles = [NSArray arrayWithObjects:@"Home", @"Export", @"Settings", @"Titles", @"Slides", @"Text doc", nil];
    NSArray *viewClasses = [NSArray arrayWithObjects:@"AIViewController", @"AIViewController", @"AIViewController", @"AITitlesViewController", @"AISlidesViewController", @"AIViewController", nil];

    NSMutableArray *controllersToAdd = [[NSMutableArray alloc] init];
    for (NSUInteger i = 0; i < [titles count]; i++) {
        AIViewController *viewC = [[NSClassFromString([viewClasses objectAtIndex:i]) alloc] init];
        [viewC setAppDelegate:appDelegate];
        UITabBarItem *tbi = [[UITabBarItem alloc] initWithTitle:[titles objectAtIndex:i] image:nil tag:i];



        [viewC setTabBarItem:tbi];



        [controllersToAdd addObject:viewC];
    }

    [self setViewControllers:[NSArray arrayWithArray:controllersToAdd] animated:YES];




}
@end
4

1 に答える 1

0

このメソッドをappDelegateに追加することで、QuartzCorelibをインポートすることを忘れないでください。

-(BOOL)tabBarController:(UITabBarController *)tabBarController didSelectViewController:(UIViewController *)viewController{

CATransition *transition = [CATransition animation];
transition.duration = 1.0;
transition.type = kCATransitionPush; //choose your animation
[viewController.view.layer addAnimation:transition forKey:nil];
[self.tabBarController.view addSubview:viewController.view];

return YES;   

}

于 2012-06-11T08:29:27.633 に答える