一款APP的成功與否,除了完善的功能外,用戶體驗也佔有極大的比重,動畫的合理運用,能夠很好的加強用戶體驗。iOS開發中,經常使用的動畫處理有UIView動畫編程和核心動畫編程,其中UIView動畫使用簡便,開發中應用十分普遍。這篇博客,主要討論UIView的動畫使用。
+ (void)animateWithDuration:(NSTimeInterval)duration animations:(void (^)(void))animations;
這個是參數最少的一個方法,咱們能夠經過設置一個時間和block塊來完成動畫,時間參數是動畫執行的時長,block塊中爲要執行的動畫動做,具體能夠執行那些動做,咱們會在後面說。例如在1S內將view漸變透明:編程
[UIView animateWithDuration:1 animations:^{ _myView.alpha=0; }];
+ (void)animateWithDuration:(NSTimeInterval)duration animations:(void (^)(void))animations completion:(void (^)(BOOL finished))completion;
這個函數會帶兩個block塊,用法和第一個函數類似,設置一個執行時間和一個執行動做,第二個block塊中能夠添加一個動畫執行結束後的動做,做爲補充,例以下面代碼的效果,在1S內將view漸變爲透明,動畫結束後,view在瞬間變回不透明:函數
[UIView animateWithDuration:1 animations:^{ _myView.alpha=0; } completion:^(BOOL finished) { if (finished) { _myView.alpha=1; } }];
+ (void)animateWithDuration:(NSTimeInterval)duration delay:(NSTimeInterval)delay options:(UIViewAnimationOptions)options animations:(void (^)(void))animations completion:(void (^)(BOOL finished))completion;
這個函數除了上面的屬性外,能夠設置延時執行,同時能夠設置一個動畫效果參數,這個參數是個枚舉,它能夠影響動畫的執行效果,後面會再總結。動畫