CAAnimation:核心動畫 是所有動畫的父類
1>.CAMediaTiming媒體時間類協議
CAMediaTiming中的協議內容
1.beginTime 動畫開始的時間 默認為0
2.duration 動畫的持續時間 默認為0 持續時間 受速度的影響 實際動畫完成時間 = 持續時間/速度
3.speed 動畫的播放速度 默認為1 速度設置為0 可以暫停動畫
如果speed 2秒 duration 60秒 那么動畫真正播放完成的時間 30秒
4.timeOffset 動畫播放時間的偏移量
5.repeatCount 動畫的循環次數 默認是0 只播放一次
6.repeatDuration 動畫循環的持續時間
repeatCount/repeatDuration 只能設置其中的一個屬性
7.autoreverses 是否以動畫的形式返回 返回到播放之前的狀態
8.fillMode 設置當前對象在非活動時間段的狀態
要想fillMode有效 需設置removedOnCompletion = NO
kCAFillModeForwards 當動畫結束后,layer會一直保持著動畫最后的狀態
kCAFillModeBackwards 立即進入動畫的初始狀態并等待動畫開始
kCAFillModeBoth 動畫加入后開始之前 layer處于動畫初始狀態 動畫結束后layer保持動畫最后的狀態
kCAFillModeRemoved 默認值 動畫結束后 layer會恢復到之前的狀態
2>.CAAnimation動畫屬性方法介紹
1.初始化的方法 animation
2.timingFunction 速度控制類 控制動畫運行的節奏
初始化:functionWithName:
kCAMediaTimingFunctionLinear 勻速
kCAMediaTimingFunctionEaseIn 慢進快出
kCAMediaTimingFunctionEaseOut 快進慢出
kCAMediaTimingFunctionEaseInEaseOut 慢進慢出 中間加速
kCAMediaTimingFunctionDefault 默認
3.delegate 代理
4.removedOnCompletion 完成動畫的時候 是否移除動畫效果
5.代理方法
- (void)animationDidStart:(CAAnimation *)anim
- (void)animationDidStop:(CAAnimation *)anim finished:(BOOL)flag