Не работает анимация при повторном запуске. В чем может быть причина?

При нажатии на кнопку "Сохранить" , LinearLayout переходит из INVISIBLE в VISIBLE, запускается анимация сохранения и через 3 сек запускается анимация исчезновения и LinearLayout устанавливается INVISIBLE. Это все работает при первом запуске, но не работает при последующих. Устанавливал слушателя на анимацию, и есть ответ на onAnimationStart и onAnimationEnd, при этом анимация не показывается. Пробовал так же:

  1. запускать в отдельном потоке
  2. делал гиф и запускал через библиотеку для 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) {
        }
    });
}

Ответы (0 шт):