UINavigationController改变动画效果

时间:2014-08-23 13:50:20   收藏:0   阅读:285
@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

 

原文:http://www.cnblogs.com/benbenzhu/p/3930909.html

评论(0
© 2014 bubuko.com 版权所有 - 联系我们:wmxa8@hotmail.com
打开技术之扣,分享程序人生!