移動開發過程中, 動畫是必不可少的,有瞭動畫,仿佛我們的程序有瞭生命一樣.動畫可以讓我們的程序界面變化更流暢, 而不是很突兀的感覺.今天,就說一下CATransition過渡動畫.
我們先看一下過渡動畫的代碼實現:
// 創建 CATransition *transition = [CATransition animation]; transition.duration = 2; // 設置過渡樣式 /** Types: kCATransitionFade kCATransitionMoveIn kCATransitionPush kCATransitionReveal */ // 樣式 transition.type = kCATransitionReveal; /** * Subtypes: kCATransitionFromRight; kCATransitionFromLeft; kCATransitionFromTop; kCATransitionFromBottom; */ // 方向 transition.subtype = kCATransitionFromBottom; // 添加動畫 [self.changeView.layer addAnimation:transition forKey:nil];
一般的,我們設置動畫的類型使用提供的枚舉值.偶然發現,過渡動畫還能識別一些OC中的字符串.
使用方法:
transition.type = @"rippleEffect";
下面是一些能夠使用的動畫類型:
fade // 交叉淡化過渡(不支持過渡方向)
push // 新視圖把舊視圖推出去
moveIn // 新視圖移到舊視圖上面
reveal // 將舊視圖移開,顯示下面的新視圖
cube // 立方體翻滾效果
oglFlip // 上下左右翻轉效果
suckEffect
// 收縮效果,如一塊佈被抽走(不支持過渡方向)
rippleEffect // 滴水效果(不支持過渡方向)
pageCurl // 向上翻頁效果
pageUnCurl // 向下翻頁效果
cameraIrisHollowOpen // 相機鏡頭打開效果(不支持過渡方向)
cameraIrisHollowClose // 相機鏡頭關上效果(不支持過渡方向)