2013-02-01 38 views

回答

0

我覺得你可以利用Animation Delegates

的CAAnimation類提供的手段來通知委託對象 當動畫啓動和停止。

如果動畫有指定的委託,它將收到 animationDidStart:message,傳遞開始的動畫實例。 動畫停止時,委託收到一個 animationDidStop:finished:消息,傳遞停止的動畫實例 ,以及布爾值,指示動畫是否成功完成 其持續時間或手動停止。

animationDidStart:可以放置計數器每次調用增加此計數器會給你的迭代次數

+0

感謝您的迴應Ravindra!聽起來像一個合理的計劃。但是animationDidStart每次迭代都會被調用,或者剛剛開始。如果它在開始時被調用,那麼可能沒有多大用處。代表名稱暗示它會在啓動時被調用,並且可能不會用於每次迭代。無論如何,我會在接下來的一小時內給它一個鏡頭! – SurenderS

+0

Ravindra,我剛剛確認animationDidStart只在開始時調用,當您將動畫添加到圖層時,而不是在運行時重複動畫。 – SurenderS

0

我能解決它自己,未必是最好的答案測量iteration.on。

我在起始點使用CaLayer,並檢查汽車和這個層的框架是否與定時器相交。這個問題會隨着時間的推移而延續,因爲它會多次相交,從而給出圖像和定時器頻率的寬度和高度。然後,我用一面旗子在相交時只計算一次。

- 謝謝!