UI基礎----CATransition 轉場動畫 type 私有 API

最近在研究如何更炫的顯示圖片,因此摸索了幾種比較好的解決辦法,可是這種更炫的解決辦法可能會致使你的程序不能被 apple store 審覈經過的分享,慎用!!!!!可是若是你的 app 是要經過企業簽發布的會則不會受到太大的影響.
app

廢話很少說,直接進入主題,我們先來分析一下蘋果官方給出的幾種效果,以及一些屬性的解釋:動畫

CATransition 是CAAnimation 的子類,他們是繼承的關係(CATransition : CAAnimation),這麼說可能會有些抽象,你們能夠想一下UINavigationController 就是經過CATransition 實現了將控制器的視圖推入屏幕的效果.url

屬性解析:spa

type:-------------動畫過分類型code

subtype:----------動畫過渡方向繼承

startProgress:----動畫起點(在總體動畫的百分比)
圖片

endProgress:------動畫終點(在總體動畫的百分比)ip

動畫過渡類型:ci

        官方提供 API"
animation

  1. (fade) kCATransitionFade----------交叉淡化過渡(不支持過渡方向,也就是說設置不設置 subtype 並無什麼卵用)

    (moveIn) kCATransitionMoveIn---新視圖移到舊視圖上面

    (push) kCATransitionPush---------新視圖把舊視圖推出去

    (reveal) kCATransitionReveal -----舊視圖移開,顯示下面的新視圖

    私有 API:

  2. cube -------------------------立方體翻轉效果

        oglFlip -----------------------上下左右翻轉效果

        suckEffect -------------------收縮效果.如一塊布被抽走(不支持過渡方向)

        rippleEffect ------------------滴水效果(不支持過渡方向)

        pageCurl ---------------------向上翻頁效果

        pageUnCurl ------------------向下翻頁效果

        rotate -------------------------旋轉(不支持過渡方向,能夠在 subtype 設置旋轉角度)

        cameraIrisHollowOpen ------相機鏡頭打開效果(不支持過渡方向)

        cameraIrisHollowClose ------相機鏡頭關閉效果(不支持過渡方向)

動畫過渡方向:

        kCATransitionFromTop ----------從上部滑入

        kCATransitionFromBottom ------從下部滑入

        kCATransitionFromLeft ----------從左側滑入

        kCATransitionFromRight --------從右側滑入


如下是示例程序的核心代碼:

// 1. 建立轉場動畫
CATransition *transition = [CATransition animation];
// 2. 設置轉場動畫形式
transition.type = kCATransitionMoveIn;
// 3. 設置轉場動畫附形式
transition.subtype = kCATransitionFromBottom;
// 4. 執行動畫
[self.bgView.layer addAnimation:transition forKey:nil];


另外若是設置 type 爲 "rotate"的時候能夠設置旋轉角度

CATransition *transition = [CATransition animation];
transition.type = @"rotate";
transition.subtype = @"90ccw";

旋轉角度設置:

 90cw ----逆時針旋轉 90°

 90ccw ---順時針旋轉 90°

 180cw ---逆時針旋轉 180°

 180ccw --順時針旋轉 180°


著做權聲明:本文爲做者原創,歡迎轉載分享。請尊重做者勞動,轉載時保留該聲明和做者博客連接,謝謝!

相關文章
相關標籤/搜索