在我的应用程序中,我想从右到左为我的活动设置动画。直到现在我试试这个:
startActivity(intent);
finish();
overridePendingTransition(R.anim.slide_in_right,R.anim.slide_out_left);
这个工作正常但我以前的活动已经完成了。我想在不完成之前的活动的情况下做同样的动画。
尝试这样的时候:
startActivity(intent);
overridePendingTransition(R.anim.slide_in_right,R.anim.slide_out_left);
只有新开始的活动进入动画,之前的活动才会产生任何效果。如何在不完成前一个活动的情况下为两个活动设置动画?
答案 0 :(得分:0)
在这种情况下你应该使用Handler! 把时间放在第一个活动的Handler上。在此期间,为您的第一个活动设置动画。在此步骤处理程序之后,将控件提供给第二个活动,然后在第二个活动上启动动画
答案 1 :(得分:0)
我认为您的动画可能是问题所在。我使用以下动画文件具有相同的效果:
slide_in_right.xml
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:shareInterpolator="false">
<translate
android:duration="@android:integer/config_mediumAnimTime"
android:fromXDelta="100%"
android:fromYDelta="0%"
android:toXDelta="0%"
android:toYDelta="0%" />
</set>
slide_out_left.xml
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:shareInterpolator="false">
<translate
android:duration="@android:integer/config_mediumAnimTime"
android:fromXDelta="0%"
android:fromYDelta="0%"
android:toXDelta="-100%"
android:toYDelta="0%" />
</set>