2015-09-14 100 views
1

我想知道當動畫結束或被中斷時如何獲取當前旋轉動畫中的角度/度數?android旋轉動畫中斷時獲取當前角度/度數

我的想法是當點擊某個按鈕時動畫被中斷,旋轉將逆時針旋轉(當前流程是順時針),當它被中斷時從最後一個角度/度數開始。

我已經使用applyTransformation嘗試過,但似乎不叫:(

感謝!

+0

'applyTransformation'稱爲該擴展'android.view.animation.Animation' – pskink

+0

我會記住@pskink感謝任何動畫! – yfsx

+0

請參閱此[問題](https://stackoverflow.com/questions/11287737/rotating-an-image-and-displaying-angle-of-rotation)。 – luiswill

回答

2

對於這一點,你必須不與簡單的循環動畫旋轉你的對象。 但需要與ObjectAnimator旋轉。

下面是簡單的例子來找到球(ImageView的)的旋轉角度。

ImageView ball; 

int i = ball.getMeasuredHeight(); 

ObjectAnimator animation = ObjectAnimator.ofFloat(ball, "rotation", 0, 360); 
animation.setDuration(10000); 
ball.setPivotX(0); 
ball.setPivotY(i/2); 
animation.setRepeatCount(ObjectAnimator.INFINITE); 
animation.setInterpolator(new LinearInterpolator()); 
animation.start(); 

爲了得到當前旋轉角度使用:

ball.getRotation();