UINavigationcontroller页面跳转动画
第一种方式:
MyViewController *my=[[MyViewController alloc] init]; [self.navigationController pushViewController:my animated:NO]; //因为一个事件循环机制中 CATransition *tran=[CATransition animation]; tran.duration=0.75; tran.type=@"cameraIrisHollowOpen"; tran.subtype=kCATransitionFromLeft; [self.navigationController.view.layer addAnimation:tran forKey:nil];
第二种方式:
MyViewController *my=[[MyViewController alloc] init];
[UIView transitionWithView:self.navigationController.view duration:0.5 options:UIViewAnimationOptionTransitionCurlUp animations:^{ [self.navigationController pushViewController:my animated:NO]; } completion:^(BOOL finished) { }];
第三种方式:
[UIView beginAnimations:nil context:nil]; [UIView setAnimationDuration:0.5]; [UIView setAnimationTransition:UIViewAnimationTransitionCurlUp forView:self.navigationController.view cache:YES]; MyViewController *my=[[MyViewController alloc] init]; [self.navigationController pushViewController:my animated:NO]; [UIView commitAnimations];