利用animationDidStop處理動畫結束需要注意的

使用CABasicAnimation時,利用animationDidStop區(qū)分哪個動畫結束需要注意到的地方
如下:
CABasicAnimation*rightAni = [CABasicAnimationanimationWithKeyPath:@"strokeEnd"];
rightAni.fromValue=@0;
rightAni.toValue=@1;
rightAni.duration=1.5;
rightAni.delegate=self;
[_rightFlagLayer addAnimation:rightAniforKey:DrawingRightFlag];

按照上面這樣寫,動畫的removedOnCompletion屬性默認為YES,運行一次動畫就會銷毀。結果就是動畫結束的代理回調中使用
[_rightFlagLayer animationForKey:DrawingRightFlag]為null。。無法區(qū)分是哪種動畫
因此一定要加rightAni.removedOnCompletion=NO這句話
完成后的代碼如下:

CABasicAnimation*rightAni = [CABasicAnimationanimationWithKeyPath:@"strokeEnd"];
rightAni.fromValue=@0;
rightAni.toValue=@1;
rightAni.duration=1.5;
rightAni.delegate=self;
rightAni.removedOnCompletion=NO;
[_rightFlagLayer addAnimation:rightAniforKey:DrawingRightFlag];

-(void)animationDidStop:(CAAnimation*)anim finished:(BOOL)flag
{
if([_rightFlagLayer animationForKey:DrawingRightFlag] == anim)
{
//此處執(zhí)行你想要做的事情
}
}

完結!
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

  • 本文轉載自:http://www.cocoachina.com/ios/20150105/10812.html 為...
    idiot_lin閱讀 1,397評論 0 1
  • 在iOS中隨處都可以看到絢麗的動畫效果,實現(xiàn)這些動畫的過程并不復雜,今天將帶大家一窺iOS動畫全貌。在這里你可以看...
    F麥子閱讀 5,275評論 5 13
  • 在iOS中隨處都可以看到絢麗的動畫效果,實現(xiàn)這些動畫的過程并不復雜,今天將帶大家一窺ios動畫全貌。在這里你可以看...
    每天刷兩次牙閱讀 8,699評論 6 30
  • 如果想讓事情變得順利,只有靠自己 -- 夏爾·紀堯姆 上一章介紹了隱式動畫的概念。隱式動畫是在iOS平臺創(chuàng)建動態(tài)用...
    雪_晟閱讀 653評論 0 1
  • 顯式動畫 顯式動畫,它能夠對一些屬性做指定的自定義動畫,或者創(chuàng)建非線性動畫,比如沿著任意一條曲線移動。 屬性動畫 ...
    清風沐沐閱讀 2,108評論 1 5

友情鏈接更多精彩內容