CATransition
- 父類是CAAnimation
轉場動畫——CATransition
- CATransition是CAAnimation的子類,用于做轉場動畫,能夠為層提供移出屏幕和移入屏幕的動畫效果。iOS比Mac OS X的轉場動畫效果少一點
UINavigationController就是通過CATransition實現了將控制器的視圖推入屏幕的動畫效果
動畫屬性:
1. type:動畫過渡類型
2. subtype:動畫過渡方向
3. startProgress:動畫起點(在整體動畫的百分比)
4. endProgress:動畫終點(在整體動畫的百分比)-
轉場動畫過渡效果圖
轉場動畫過渡效果.png
CATransition實現轉場動畫
static int i = 2;
NSString *imageName = [NSString stringWithFormat:@"%d",i];
_imageView.image = [UIImage imageNamed:imageName];
i++;
if (i > 3) {
i = 1;
}
// 只要切換界面 都可以使用轉場動畫
// 誰切換界面 就添加到誰上
// 轉場動畫代碼必須和界面切換的代碼放在一起
##核心代碼
// 轉場動畫
CATransition *anim = [CATransition animation];
// 指定轉場類型
anim.type = @"pageCurl";
// 設置轉場的方向
anim.subtype = kCATransitionFromLeft;
// 設置動畫的進度
anim.startProgress = 0.5;
anim.endProgress = 0.8;
anim.duration = 3;
[_imageView.layer addAnimation:anim forKey:nil];