我目前正在使用这个:
overridePendingTransition(R.anim.right_slide_in, R.anim.right_slide_out);
R.anim.right_slide_in.xml正在使用:
<translate
android:fromXDelta="100%p"
android:toXDelta="0"
android:duration="300"
/>
R.anim.right_slide_out.xml正在使用:
<translate
android:fromXDelta="0"
android:toXDelta="-100%"
android:duration="300"
/>
这很好用。当我参加活动时,新的活动从右边出现,因为旧的活动消失在左边。
现在我要创建 reverse 。如果我回到某个活动,新的那个从左边出现,因为旧的一个消失在右边。
我正在使用:overridePendingTransition(R.anim.left_slide_in, R.anim.left_slide_out);
R.anim.left_slide_in使用:
<translate
android:fromXDelta="-100%p"
android:toXDelta="0"
android:duration="300"
/>
R.anim.left_slide_out使用:
<translate
android:fromXDelta="0"
android:toXDelta="100%"
android:duration="300"
/>
活动正确地向右消失(所以我认为 left_slide_out没问题?)但是新活动并没有正确地从左边进入。
我做错了什么?
答案 0 :(得分:1)
使用此
转到其他活动时,您可以设置动画 Intent i = new Intent(MainActivity.this, NexytActivity.class);
startActivity(i);
overridePendingTransition(R.anim.activity_slide_in_right, R.anim.activity_slide_out_left);
在NextActivity上编写此代码......
@Override
public void onBackPressed() {
super.onBackPressed();
overridePendingTransition(R.anim.activity_slide_in_left, R.anim.activity_slide_out_right);
}
动画文件 / 1 / activity_slide_in_right
<set xmlns:android="http://schemas.android.com/apk/res/android" >
<translate
android:duration="300"
android:fromXDelta="100%"
android:toXDelta="0" />
</set>
/ 2 / activity_slide_out_left
<set xmlns:android="http://schemas.android.com/apk/res/android" >
<translate
android:duration="300"
android:fromXDelta="0"
android:toXDelta="-100%" />
</set>
/ 3 / activity_slide_in_left
<set xmlns:android="http://schemas.android.com/apk/res/android" >
<translate
android:duration="300"
android:fromXDelta="-100%p"
android:toXDelta="0" />
</set>
/ 4 / activity_slide_out_right
<set xmlns:android="http://schemas.android.com/apk/res/android" >
<translate
android:duration="300"
android:fromXDelta="0"
android:toXDelta="100%" />
</set>
答案 1 :(得分:0)
您可以使用以下四个选项来设置动画:
你可以在你的样式文件中设置这些,如下所示:
<resources>
<style name="XYZAppTheme" parent="XYZAppTheme.Base">
<item name="android:windowExitTransition">@transition/custom_transition1</item>
<item name="android:windowReenterTransition">@transition/custom_transition2</item>
<item name="android:windowEnterTransition">@transition/custom_transition3</item>
<item name="android:windowReturnTransition">@transition/custom_transition4</item>
</style>
假设您已在转换文件夹中定义了自定义转换。