iOS動(dòng)畫中的枚舉UIViewAnimationOptions 2017-12-26

首先這個(gè)枚舉屬于UIViewAnimation。我們經(jīng)常使用的函數(shù)是?[UIView animateWithDuration: animations:^{} completion:^(BOOL finished) {}];和[UIView animateWithDuration: animations:^{}];如果動(dòng)畫稍微復(fù)雜點(diǎn),例如需要組合等等就可能用到這個(gè)函數(shù):[UIView?animateWithDuration:?delay:?options:?animations:?completion:^(BOOL?finished) {}];剛開始接觸的朋友看到一堆枚舉可能就覺得煩,尤其是蘋果那混亂的動(dòng)畫框架東一坨,西一坨。又是Quartz2D,又是核心動(dòng)畫跟臭襪子一樣……沒關(guān)系,撿回來接著穿。

以上方法中的options一項(xiàng)需要傳入一個(gè)枚舉,這個(gè)枚舉大概控制的是這幾個(gè)要素:當(dāng)前動(dòng)畫嵌套中的動(dòng)畫執(zhí)行隨時(shí)間的快慢種類(先快后慢等..)。動(dòng)畫要一直重復(fù)嗎。如果我使用轉(zhuǎn)場(chǎng)動(dòng)畫那么我用哪種轉(zhuǎn)場(chǎng)效果。還有子動(dòng)畫嵌套在父動(dòng)畫中時(shí)我們?nèi)绾螌?duì)待父動(dòng)畫中的相同選項(xiàng)等等..

正文:

?UIViewAnimationOptionLayoutSubviews?//提交動(dòng)畫的時(shí)候布局子控件,表示子控件將和父控件一同動(dòng)畫。

?UIViewAnimationOptionAllowUserInteraction?//動(dòng)畫時(shí)允許用戶交流,比如觸摸

?UIViewAnimationOptionBeginFromCurrentState?//從當(dāng)前狀態(tài)開始動(dòng)畫

?UIViewAnimationOptionRepeat?//動(dòng)畫無限重復(fù)

?UIViewAnimationOptionAutoreverse?//執(zhí)行動(dòng)畫回路,前提是設(shè)置動(dòng)畫無限重復(fù)

?UIViewAnimationOptionOverrideInheritedDuration?//忽略外層動(dòng)畫嵌套的執(zhí)行時(shí)間

?UIViewAnimationOptionOverrideInheritedCurve?//忽略外層動(dòng)畫嵌套的時(shí)間變化曲線

?UIViewAnimationOptionAllowAnimatedContent?//通過改變屬性和重繪實(shí)現(xiàn)動(dòng)畫效果,如果key沒有提交動(dòng)畫將使用快照

?UIViewAnimationOptionShowHideTransitionViews?//用顯隱的方式替代添加移除圖層的動(dòng)畫效果

?UIViewAnimationOptionOverrideInheritedOptions?//忽略嵌套繼承的?選項(xiàng)

//時(shí)間函數(shù)曲線相關(guān)

?UIViewAnimationOptionCurveEaseInOut?//時(shí)間曲線函數(shù),緩入緩出,中間快

?UIViewAnimationOptionCurveEaseIn?//時(shí)間曲線函數(shù),由慢到特別快(緩入快出)

?UIViewAnimationOptionCurveEaseOut?//時(shí)間曲線函數(shù),由快到慢(快入緩出)

?UIViewAnimationOptionCurveLinear?//時(shí)間曲線函數(shù),勻速

//轉(zhuǎn)場(chǎng)動(dòng)畫相關(guān)的

?UIViewAnimationOptionTransitionNone?//無轉(zhuǎn)場(chǎng)動(dòng)畫

?UIViewAnimationOptionTransitionFlipFromLeft?//轉(zhuǎn)場(chǎng)從左翻轉(zhuǎn)

?UIViewAnimationOptionTransitionFlipFromRight?//轉(zhuǎn)場(chǎng)從右翻轉(zhuǎn)

?UIViewAnimationOptionTransitionCurlUp?//上卷轉(zhuǎn)場(chǎng)

?UIViewAnimationOptionTransitionCurlDown?//下卷轉(zhuǎn)場(chǎng)

?UIViewAnimationOptionTransitionCrossDissolve?//轉(zhuǎn)場(chǎng)交叉消失

?UIViewAnimationOptionTransitionFlipFromTop?//轉(zhuǎn)場(chǎng)從上翻轉(zhuǎn)

?UIViewAnimationOptionTransitionFlipFromBottom?//轉(zhuǎn)場(chǎng)從下翻轉(zhuǎn)

補(bǔ)充:關(guān)于最后一組轉(zhuǎn)場(chǎng)動(dòng)畫它一般是用在這個(gè)方法中的:

[UIView transitionFromView: toView: duration:?options: completion:^(BOOL?finished) {}];

 該方法效果是插入一面視圖移除一面視圖,期間可以使用一些轉(zhuǎn)場(chǎng)動(dòng)畫效果。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 在iOS中隨處都可以看到絢麗的動(dòng)畫效果,實(shí)現(xiàn)這些動(dòng)畫的過程并不復(fù)雜,今天將帶大家一窺ios動(dòng)畫全貌。在這里你可以看...
    每天刷兩次牙閱讀 8,690評(píng)論 6 30
  • 在iOS實(shí)際開發(fā)中常用的動(dòng)畫無非是以下四種:UIView動(dòng)畫,核心動(dòng)畫,幀動(dòng)畫,自定義轉(zhuǎn)場(chǎng)動(dòng)畫。 1.UIView...
    請(qǐng)叫我周小帥閱讀 3,320評(píng)論 1 23
  • 在iOS中隨處都可以看到絢麗的動(dòng)畫效果,實(shí)現(xiàn)這些動(dòng)畫的過程并不復(fù)雜,今天將帶大家一窺iOS動(dòng)畫全貌。在這里你可以看...
    F麥子閱讀 5,268評(píng)論 5 13
  • 動(dòng)畫的繼承結(jié)構(gòu) CAAnimation{CAPropertyAnimation{CABasicAnimation{...
    早起的蟲兒子被鳥吃閱讀 958評(píng)論 0 1
  • 首先這個(gè)枚舉屬于UIViewAnimation。我們經(jīng)常使用的函數(shù)是[UIView animateWithDura...
    兜兜Jerry閱讀 257評(píng)論 0 1

友情鏈接更多精彩內(nèi)容