Как упоминается Google в этом https://youtu.be/N_x7SV3I3P0
view. Анимация по-прежнему используется для Windows анимации перехода.
Следовательно, я использую
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<item name="android:windowAnimationStyle">@style/WindowAnimations</item>
</style>
<style name="WindowAnimations">
<item name="android:windowEnterAnimation">@anim/enter_activity</item>
<item name="android:windowExitAnimation">@anim/exit_activity</item>
</style>
Я получаю только переход при входе, когда перехожу с Activity1 (Hello World) на Activitity2 (Purple). Аналогично при возврате от Activity2 к Activitiy1, отображается только переход при входе. Переход к выходу не может быть инициирован.
Результат показан ниже.
Похоже, android:windowExitAnimation
не работает? (то есть, если я удалю его, эффект будет таким же).
Для обходного пути в моем Activity2 я использую overridePendingTransition(R.anim.enter_activity, R.anim.exit_activity)
вместо, как показано ниже.
class Main2Activity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main2)
overridePendingTransition(R.anim.enter_activity, R.anim.exit_activity)
}
override fun finish() {
super.finish()
overridePendingTransition(R.anim.enter_activity, R.anim.exit_activity)
}
}
Затем я получаю результат как я и хотел.
Есть ли ошибка в android:windowExitAnimation
? Или я что-то пропустил?
p / s: моя анимация перехода XML как показано ниже
enter_activity. xml
<set android:shareInterpolator="false"
xmlns:android="http://schemas.android.com/apk/res/android">
<scale
android:interpolator="@android:anim/accelerate_decelerate_interpolator"
android:fromXScale="0.0"
android:toXScale="1.0"
android:fromYScale="0.0"
android:toYScale="1.0"
android:pivotX="50%"
android:pivotY="50%"
android:fillAfter="false"
android:duration="2000" />
</set>
exit_activity. xml
<set android:shareInterpolator="false"
xmlns:android="http://schemas.android.com/apk/res/android">
<scale
android:interpolator="@android:anim/accelerate_decelerate_interpolator"
android:fromXScale="1.0"
android:toXScale="0.0"
android:fromYScale="1.0"
android:toYScale="0.0"
android:pivotX="50%"
android:pivotY="50%"
android:fillAfter="false"
android:duration="2000" />
</set>