我需要取消旋转动画,获取被取消的度数,并使用fromValue的度数值设置新动画。
当调用cancel时,我尝试了以下方法来获取动画的进度:
@Override
public void onAnimationEnd(Animation animation) {
mAnimatingRotation = false;
Transformation transformation = new Transformation();
animation.getTransformation(AnimationUtils.currentAnimationTimeMillis(),transformation);
Matrix matrix = transformation.getMatrix();
}
然而,我得到的变换对象与动画对象中的变换对象不同。我得到的是这样的:
Transformation{alpha=1.0 matrix=[1.0, -0.0, 0.0][0.0, 1.0, 0.0][0.0, 0.0, 1.0]}
我认为问题出在
AnimationUtils.currectAnimationTimeMillis()
现在不是我应该采用这种方法的时候。我也试过通过
System.currentTimeMillis()
同样的结果