Не работает анимация при повторном запуске. В чем может быть причина?
При нажатии на кнопку "Сохранить" , LinearLayout переходит из INVISIBLE в VISIBLE, запускается анимация сохранения и через 3 сек запускается анимация исчезновения и LinearLayout устанавливается INVISIBLE. Это все работает при первом запуске, но не работает при последующих. Устанавливал слушателя на анимацию, и есть ответ на onAnimationStart и onAnimationEnd, при этом анимация не показывается. Пробовал так же:
- запускать в отдельном потоке
- делал гиф и запускал через библиотеку для gif
Результат тот же. В чем может быть причина?
Пробовал повторить на чистом проекте, скопировав xml и запускать по кнопке, все работает.
private void stateSaved() {
final LinearLayout layout = activity.findViewById(R.id.saved_state_include);
layout.setVisibility(View.VISIBLE);
animState = activity.findViewById(R.id.saved_state_anim);
animSaved = AnimationUtils.loadAnimation(activity, R.anim.anim_ripple);
animState.startAnimation(animSaved);
Animation animation = AnimationUtils.loadAnimation(activity, R.anim.anim_state);
layout.startAnimation(animation);
Animation blackout = AnimationUtils.loadAnimation(activity, R.anim.anim_blackout);
layout.startAnimation(blackout);
blackout.setAnimationListener(new Animation.AnimationListener() {
@Override
public void onAnimationStart(Animation animation) {
}
@Override
public void onAnimationEnd(Animation animation) {
animState.clearAnimation();
layout.setVisibility(View.INVISIBLE);
}
@Override
public void onAnimationRepeat(Animation animation) {
}
});
}