iOS 的畫面切換的動畫效果的 API 主要通過調用系統已定義的動畫效果實現,這些效果已基本囊括開發的需求,如果需要更加複雜的效果,可以考慮 CATransition 來實現
以下是基本的四種效果
kCATransitionPush 推入效果
kCATransitionMoveIn 移入效果
kCATransitionReveal 截開效果
kCATransitionFade 漸入漸出效果
以下 API 效果可以安全使用
cube 方塊
suckEffect 三角
rippleEffect 水波抖動
pageCurl 上翻頁
pageUnCurl 下翻頁
oglFlip 上下翻轉
cameraIrisHollowOpen 鏡頭快門開
cameraIrisHollowClose 鏡頭快門關
以下 API 效果請慎用
spewEffect 新版面在屏幕下方中間位置被釋放出來覆蓋舊版面。
genieEffect 舊版面在屏幕左下方或右下方被吸走,顯示出下面的新版面。
unGenieEffect 新版面在屏幕左下方或右下方被釋放出來覆蓋舊版面。
twist 版面以水平方向像龍捲風式轉出來。
tubey 版面垂直附有彈性的轉出來。
swirl 舊版面 360 度旋轉並淡出,顯示出新版面。
charminUltra 舊版面淡出並顯示新版面。
zoomyIn 新版面由小放大走到前面,舊版面放大由前面消失。
zoomyOut 新版面屏幕外面縮放出現,舊版面縮小消失。
oglApplicationSuspend 像按 "home" 按鈕的效果。
動畫效果的用法
CATransition *animation = [CATransition animation];
animation.duration = 10.5f;
animation.timingFunction = UIViewAnimationCurveEaseInOut;
animation.fillMode = kCAFillModeForwards;
// 基本型
animation.type = kCATransitionPush;
// 私有 API,字符串型
animation.type = "cube";
[self.view.layer addAnimation forKey:@"animation"];
參考地址:
http://hi.baidu.com/jj89757hhb/item/a5108a80e078d45b26ebd9f3