我正在尝试为两个片段执行简单的翻译动画。其中一个从右侧进入,而另一个则向左侧移出。我的最小SDK版本为14。发生的情况是过渡发生了,但实际上没有动画效果。在动画XML中指定的时间之后,片段只是交换了位置。因此,动画时间得到了尊重,但实际上没有进行翻译。
我的片段动画代码如下:
我的动画XML文件是(从右边进入):
我的片段动画代码如下:
FragmentManager fragmentManager = getFragmentManager();
FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
fragmentTransaction.setCustomAnimations(R.animator.enter_from_right, R.animator.exit_to_left);
fragmentTransaction.replace(android.R.id.content, termsFragment);
fragmentTransaction.commit();
fragmentManager.executePendingTransactions();
我的动画XML文件是(从右边进入):
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<objectAnimator
android:interpolator="@android:anim/accelerate_decelerate_interpolator"
android:fromXDelta="100%"
android:toXDelta="0%"
android:duration="1000" />
</set>
并且 exit_to_left:
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<objectAnimator
android:interpolator="@android:anim/accelerate_decelerate_interpolator"
android:fromXDelta="0%"
android:toXDelta="-100%"
android:duration="1000"/>
</set>