【发布时间】:2018-08-29 15:57:21
【问题描述】:
我正在尝试在 Activity 的片段容器中的片段之间添加一个简单的幻灯片动画。我的代码在运行 Android Oreo 的测试设备上运行。
这是我的代码:
在MyActivity的中onCreate():
if (savedInstanceState == null) {
getSupportFragmentManager().beginTransaction()
.add(R.id.fragmentContainer, oldFragment, OldFragment.class.getName())
.commit();
}
在按钮的代码中onClick():
getSupportFragmentManager().beginTransaction()
.setCustomAnimations(R.anim.enter_from_right, R.anim.exit_to_left,
R.anim.enter_from_left, R.anim.exit_to_right)
.replace(R.id.fragmentContainer, newFragment, NewFragment.class.getName())
.addToBackStack(NewFragment.class.getName())
.commit();
res\anim\enter_from_left.xml:
<?xml version="1.0" encoding="utf-8"?>
<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:fromXDelta="-100%"
android:toXDelta="0%"
android:fromYDelta="0%"
android:toYDelta="0%"
android:duration="@android:integer/config_shortAnimTime" />
res\anim\enter_from_right.xml:
<?xml version="1.0" encoding="utf-8"?>
<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:fromXDelta="100%"
android:toXDelta="0%"
android:fromYDelta="0%"
android:toYDelta="0%"
android:duration="@android:integer/config_shortAnimTime" />
res\anim\exit_to_left.xml:
<?xml version="1.0" encoding="utf-8"?>
<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:fromXDelta="0%"
android:toXDelta="-100%"
android:fromYDelta="0%"
android:toYDelta="0%"
android:duration="@android:integer/config_shortAnimTime" />
res\anim\exit_to_right.xml:
<?xml version="1.0" encoding="utf-8"?>
<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:fromXDelta="0%"
android:toXDelta="100%"
android:fromYDelta="0%"
android:toYDelta="0%"
android:duration="@android:integer/config_shortAnimTime" />
请注意,我的 fragment 类扩展了 android.support.v4.app.Fragment 和 MyActivityextends android.support.v7.app.AppCompatActivity。
我的问题:
从 OldFragment 到 NewFragment 的动画效果很好。 NewFragment 从右侧滑入。但是,当我按下后退按钮时,不会出现动画 - 它只是“跳转”到 OldFragment。
问题:
我在哪里做错了?按下后退按钮时,如何使从 NewFragment 到 OldFragment 的动画正常工作?
【问题讨论】:
标签: android android-fragments android-animation