系統默認的NavigationController還不錯,但是時間長了會有審美疲勞,今天在網上找了找資料,改變默認的動畫效果。
1.添加QuartzCore並引入頭文件
#import <QuartzCore/CoreAnimation.h>
2. PushView 的動畫修改
CATransition *transition = [CATransition animation];
transition.duration = 1;
transition.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut];
transition.type = kCATransitionPush;
transition.subtype = kCATransitionFromTop;
transition. delegate = self;
[self.navigationController.view.layer addAnimation:transition forKey:nil];
self.navigationController.navigationBarHidden = NO;
[self.navigationController pushViewController:viewController animated:NO];
3.popView的動畫
CATransition *transition = [CATransition animation];
transition.duration = 0.4;
transition.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut];
transition.type = kCATransitionReveal;
// transition.subtype = kCATransitionFromBottom;
transition. delegate = self;
[self.navigationController.view.layer addAnimation:transition forKey:nil];
self.navigationController.navigationBarHidden = NO;
[self.navigationController popViewControllerAnimated:NO];
本文只是演示了如何修改動畫,具體什么樣的動畫比較好看,還需要自己選擇。
團結就是力量,ios開發者自己的推廣聯盟 QQ群173063969