Используйте overridePendingTransition в сочетании с пересозданием (). Это можно сделать?
Я использовал метод Android overridePendingTransition, чтобы с большим успехом анимировать переходы страниц активности. Пример показан
startActivity(new Intent(GetTagActivity.this, MainActivity.class));
overridePendingTransition(R.anim.fade_in, R.anim.fade_out);
У меня есть ситуация, когда мне нужно "обновить" страницу и пожелать постепенного перехода. Не вдаваясь в детали, я не могу использовать StartActivity(...)
метод для вызова обновления (что позволило бы вызвать анимацию).
С помощью recreate()
прекрасно работает, чтобы "обновить" страницу, однако я не смог добавить анимацию перехода. Это не сработало.
recreate();
overridePendingTransition(R.anim.fade_in, R.anim.fade_out);
ни это
recreate().overridePendingTransition(R.anim.fade_in, R.anim.fade_out);
Может ли анимация затухания (или какой-либо переход активности) использоваться с refreshate()?
0 ответов
Да, это возможно. Что вам нужно сделать, это:
startActivity(new Intent(this, MyActivity.class));
finish();
overridePendingTransition(R.anim.fade_in, R.anim.fade_out);
По сути это как звонить recreate()
, Как указано в документации, "звоните сразу после одного из ароматов startActivity(Intent)
или же finish()
". Следовательно, recreate()
не работает Обратите внимание, что этот код должен быть помещен в MyActivity.java
где MyActivity - это имя действия, которое вы хотите воссоздать.
Вы можете использовать это (код Kotlin)
override fun recreate() {
finish()
startActivity(Intent(this,this.javaClass))
overridePendingTransition(R.anim.fade_in, R.anim.fade_out);
}