Кажется, что анимация андроида действительно не завершена, когда происходит событие onAnimationEnd
, хотя для animation.hasEnded
установлено значение true.
Я хочу, чтобы мой вид изменил свой фон для рисования в конце его ScaleAnimation
, что он и делает, но вы можете ясно видеть, что он изменяется за несколько миллисекунд до его завершения. Проблема в том, что он мерцает, потому что новый фон появляется (= is) в течение короткого времени, пока анимация действительно не закончится.
Есть ли способ получить реальный конец анимации или просто предотвратить масштабирование нового фона в этот короткий промежуток времени?
Спасибо!
// РЕДАКТИРОВАТЬ: я использую AnimationListener
, чтобы получить следующий вызов:
@Override
public void onAnimationEnd(Animation animation)
{
View view = (MyView) ((ExtendedScaleAnimation) animation).getView();
view.clearAnimation();
view.requestLayout();
view.refreshBackground(); // <-- this is where the background gets changed
}