Я искал ответ для такой проблемы, и, наконец, через неделю мне удалось решить мою проблему.Так как он похож на ваш, возможно, он вам поможет.
Установите и AnimationListener()
в вашей анимации и, onAnimationEnd
, измените макет, как вы хотите.В моем случае я хотел сдвинуть макет вверх, чтобы снизу появлялись 2 кнопки.Тем не менее, макет просто скользил визуально;кнопки все равно были бы за пределами экрана, говоря интерактивно.Итак, у меня есть что-то вроде этого:
final View screen = findViewById(R.id.welcome_screen);
final Animation a = AnimationUtils.loadAnimation(getApplicationContext(), R.anim.slide_home_up);
a.setFillAfter(true);
a.setAnimationListener(new AnimationListener() {
public void onAnimationStart(Animation animation) {
}
public void onAnimationRepeat(Animation animation) {
}
public void onAnimationEnd(Animation animation) {
screen.clearAnimation();
screen.setPadding(0, -222, 0, 0);
}
});
screen.startAnimation(a);