我想知道以下是否可能與CoreAnimation。CABasicAnimation動畫(尋找)在整個時間軸上的一個位置
就像標題所說,我想時間在整個時間軸動畫,動畫,或者如果你會尋求到一個位置。例如,假設我創建了一個CABasicAnimation,它使用EaseOut的緩動功能在10秒的整個時間線上將CALayer的顏色從藍色變爲紅色。
與其從頭到尾播放該動畫,我寧願更精細的控制。
例如,我想說整個動畫的animateTo(50%)。這將導致一個動畫從0%開始,並通過一個緩出功能動畫到整個動畫的50%。所以動畫會持續5秒鐘,我們將處於顏色轉換的中間。
之後我可以說,animateTo(20%)。這將導致動畫從我們當前的50%位置開始,並將動畫反轉爲總動畫的20%。所以我們最終得到3秒鐘的動畫,並且我們會將顏色從藍色變爲紅色的20%。
最終我們只是動畫的時間位置在整個時間表。我可以輕鬆地說animateTo(5秒),而不是animateTo(50%)。或animateTo(2秒)而不是animateTo(20%)。
我一直在CoreAnimation讀了,看來我未能夠獲得這種控制。有沒有其他人用CoreAnimation試過這個?
謝謝!
我敢肯定,有沒有「內置」的方式做這使用核心動畫。你可以創建一個可以做你想做的事情的方法,但是在這個方法中,每次從當前值開始並轉到新值時,你都會調用一個新的動畫方法。這要求你可以計算從藍色到紅色的50%方式(或者你在其間進行動畫的任何值)。 – rdelmar 2015-03-31 16:06:08
嘿rdelmar感謝您的快速響應!我以前很怕那個。我會做線性翻譯,因此計算這些新值不會太困難。 – Levi 2015-03-31 16:21:11