具体实现方式如下:
CATransition* transition = [CATransition animation];
transition.type = kCATransitionPush; //改变视图控制器出现的方式
transition.subtype = kCATransitionFromLeft; //出现的位置
[self.navigationController.view.layer addAnimation:transition forKey:kCATransition];
[self.navigationController pushViewController:yourVC animated:NO];
可选方式如下:
视图控制器出现的方式
CA_EXTERN NSString * const kCATransitionFade
CA_EXTERN NSString * const kCATransitionMoveIn
CA_EXTERN NSString * const kCATransitionPush
CA_EXTERN NSString * const kCATransitionReveal
出现的位置
CA_EXTERN NSString * const kCATransitionFromRight
CA_EXTERN NSString * const kCATransitionFromLeft
CA_EXTERN NSString * const kCATransitionFromTop
CA_EXTERN NSString * const kCATransitionFromBottom