首页 > 代码库 > UINavigationController改变动画效果

UINavigationController改变动画效果

@interface UINavigationController (CustomTransition)- (void) pushWithCustomAnimation:(UIViewController *) controller;- (void) popWithCustomAnimation;@end

 

@implementation UINavigationController (CustomTransition)- (void) pushWithCustomAnimation:(UIViewController *) controller {    CATransition *transition = [CATransition animation];    transition.duration = 0.3;    transition.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut];    transition.type = kCATransitionMoveIn;    transition.subtype = kCATransitionFromTop;    transition.delegate = self;    [self.view.layer addAnimation:transition forKey:nil];    self.navigationBarHidden = NO;    [self pushViewController:controller animated:NO];}- (void) popWithCustomAnimation {    CATransition *transition = [CATransition animation];    transition.duration =0.3;    transition.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut];    transition.type = kCATransitionReveal;    transition.subtype = kCATransitionFromBottom;    transition.delegate = self;    [self.view.layer addAnimation:transition forKey:nil];        self.navigationBarHidden = NO;    [self popViewControllerAnimated:NO];}@end

 

UINavigationController改变动画效果