1
我有一個自定義視圖和一個自定義動畫。我的自定義視圖覆蓋onAnimationEnd,我的自定義動畫類分別覆蓋applyTransformation。applyTransformation在Android中的onAnimationEnd後調用
我發現在調用onAnimationEnd後,applyTransformation仍然被調用。
我嘗試使用提供的解決方案here,但它仍然無法正常工作。
我有一個自定義視圖和一個自定義動畫。我的自定義視圖覆蓋onAnimationEnd,我的自定義動畫類分別覆蓋applyTransformation。applyTransformation在Android中的onAnimationEnd後調用
我發現在調用onAnimationEnd後,applyTransformation仍然被調用。
我嘗試使用提供的解決方案here,但它仍然無法正常工作。
我遇到了這個問題,並追溯到Android的bug跟蹤器上。 我不確定它是否仍然存在,或者它是否已經修復,但同時我用一個輕微的破解工作:
class SomeClass {
private bool mAnimationEnded = true;
private void SomeMethod() {
Animation animation = new Animation() {
@Override
protected void applyTransformation(float interpolatedTime, Transformation t) {
if (mAnimationEnded) return;
// ...
}
}
animation.setAnimationListener(new AnimationListener() {
@Override
public void onAnimationEnd(Animation animation) {
mAnimationEnded = true;
// ...
}
@Override
public void onAnimationStart(Animation animation) {
mAnimationEnded = false;
// ...
}
@Override
public onAnimationRepeat(Animation animation) { }
}
// ... Use animation here
}
}