首先這個枚舉屬于UIViewAnimation。我們經(jīng)常使用的函數(shù)是
[UIView animateWithDuration: animations:^{} completion:^(BOOL finished) {}]
[UIView animateWithDuration: animations:^{}];
如果動畫稍微復(fù)雜點(diǎn),例如需要組合等等就可能用到這個函數(shù):
[UIView animateWithDuration: delay: options: animations: completion:^(BOOL finished) {}];
以上方法中的options一項(xiàng)需要傳入一個枚舉,這個枚舉大概控制的是這幾個要素:當(dāng)前動畫嵌套中的動畫執(zhí)行隨時間的快慢種類(先快后慢等..)。動畫要一直重復(fù)嗎。如果我使用轉(zhuǎn)場動畫那么我用哪種轉(zhuǎn)場效果。還有子動畫嵌套在父動畫中時我們?nèi)绾螌Υ竸赢嬛械南嗤x項(xiàng)等等..
UIViewAnimationOptionLayoutSubviews //提交動畫的時候布局子控件,表示子控件將和父控件一同動畫。
UIViewAnimationOptionAllowUserInteraction //動畫時允許用戶交流,比如觸摸
UIViewAnimationOptionBeginFromCurrentState //從當(dāng)前狀態(tài)開始動畫
UIViewAnimationOptionRepeat //動畫無限重復(fù)
UIViewAnimationOptionAutoreverse //執(zhí)行動畫回路,前提是設(shè)置動畫無限重復(fù)
UIViewAnimationOptionOverrideInheritedDuration //忽略外層動畫嵌套的執(zhí)行時間
UIViewAnimationOptionOverrideInheritedCurve //忽略外層動畫嵌套的時間變化曲線
UIViewAnimationOptionAllowAnimatedContent //通過改變屬性和重繪實(shí)現(xiàn)動畫效果,如果key沒有提交動畫將使用快照
UIViewAnimationOptionShowHideTransitionViews //用顯隱的方式替代添加移除圖層的動畫效果
UIViewAnimationOptionOverrideInheritedOptions //忽略嵌套繼承的?選項(xiàng)
//時間函數(shù)曲線相關(guān)
UIViewAnimationOptionCurveEaseInOut //時間曲線函數(shù),由慢到快
UIViewAnimationOptionCurveEaseIn //時間曲線函數(shù),由慢到特別快
UIViewAnimationOptionCurveEaseOut //時間曲線函數(shù),由快到慢
UIViewAnimationOptionCurveLinear //時間曲線函數(shù),勻速
//轉(zhuǎn)場動畫相關(guān)的
UIViewAnimationOptionTransitionNone //無轉(zhuǎn)場動畫
UIViewAnimationOptionTransitionFlipFromLeft //轉(zhuǎn)場從左翻轉(zhuǎn)
UIViewAnimationOptionTransitionFlipFromRight //轉(zhuǎn)場從右翻轉(zhuǎn)
UIViewAnimationOptionTransitionCurlUp //上卷轉(zhuǎn)場
UIViewAnimationOptionTransitionCurlDown //下卷轉(zhuǎn)場
UIViewAnimationOptionTransitionCrossDissolve //轉(zhuǎn)場交叉消失
UIViewAnimationOptionTransitionFlipFromTop //轉(zhuǎn)場從上翻轉(zhuǎn)
UIViewAnimationOptionTransitionFlipFromBottom //轉(zhuǎn)場從下翻轉(zhuǎn)