核心動畫與UIView自帶動畫選擇

  • 什么時候使用核心動畫
    • 只要不需要與用戶交互,就可以使用核心動畫,
    • 核心動畫使用最多的場景:一般在轉場的時候使用核心動畫,核心動畫包裝的轉場動畫很強大,其實轉場動畫真實改變了值.
    CABasicAnimation *anim = [CABasicAnimation animation];
    
    anim.keyPath = @"position";
    
    anim.toValue = [NSValue valueWithCGPoint:CGPointMake(250, 500)];
    
    // 必須設置代理
    anim.delegate = self;
    
    // 取消反彈
    anim.removedOnCompletion = NO;
    anim.fillMode = kCAFillModeForwards;
    
    [_redView.layer addAnimation:anim forKey:nil];

  • 監聽動畫結束:實現代理方法
// 當動畫完成的時候調用
- (void)animationDidStop:(CAAnimation *)anim finished:(BOOL)flag
{
    // 注意:核心動畫一切都是假象,并不會真實修改layer的屬性
    NSLog(@"%@", NSStringFromCGPoint(_redView.layer.position));
}

使用UIView動畫

  • 如果需要與用戶交互,使用UIView動畫
  • 例子:UIView動畫
[UIView animateWithDuration:0.25 animations:^{
       
        _redView.layer.position = CGPointMake(250, 500);
        
    } completion:^(BOOL finished) {
        NSLog(@"%@", NSStringFromCGPoint(_redView.layer.position));

    }];
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 在iOS實際開發中常用的動畫無非是以下四種:UIView動畫,核心動畫,幀動畫,自定義轉場動畫。 1.UIView...
    請叫我周小帥閱讀 3,169評論 1 23
  • 在iOS中隨處都可以看到絢麗的動畫效果,實現這些動畫的過程并不復雜,今天將帶大家一窺iOS動畫全貌。在這里你可以看...
    F麥子閱讀 5,145評論 5 13
  • 在iOS中隨處都可以看到絢麗的動畫效果,實現這些動畫的過程并不復雜,今天將帶大家一窺ios動畫全貌。在這里你可以看...
    每天刷兩次牙閱讀 8,573評論 6 30
  • 一、UIKit動畫 第一種寫法是利用屬性,結合beginAnimations、commitAnimations 第...
    Gary_Tseng閱讀 982評論 1 3
  • 今天看到這句話的時候,很有感悟,想說自己深有體會。拒絕悲傷,當我們遠離悲傷,將悲傷隔離于自我的時候,慢慢的我...
    時_6d58閱讀 585評論 0 0