我希望像ViewPager 一样进行 startActivity转换。我的意思是活动A将活动B从一侧推到另一侧。我阅读this并试图实现转换,但它与ViewPager不相似。
slide_up1.xml
<?xml version="1.0" encoding="utf-8"?>
<set
xmlns:android="http://schemas.android.com/apk/res/android"
>
<translate
android:fromXDelta="0%p" android:toXDelta="0%p"
android:fromYDelta="100%p" android:toYDelta="0%p"
android:duration="1000" android:startOffset="500"/>
</set>
slide_up2.xml
<?xml version="1.0" encoding="utf-8"?>
<set
xmlns:android="http://schemas.android.com/apk/res/android"
>
<translate
android:fromXDelta="0%p" android:toXDelta="0%p"
android:fromYDelta="100%p" android:toYDelta="0%p"
android:duration="1000" android:startOffset="0"/>
</set>
打电话给你。
overridePendingTransition(R.animator.slide_up1, R.animator.slide_up2);
修改
解决我的问题。
slide_up1.xml
<set xmlns:android="http://schemas.android.com/apk/res/android"
>
<translate android:fromXDelta="0%" android:toXDelta="0%"
android:fromYDelta="100%" android:toYDelta="0%"
android:duration="1000"/>
</set>
slide_up2.xml
<set xmlns:android="http://schemas.android.com/apk/res/android"
>
<translate
android:fromXDelta="0%" android:toXDelta="0%"
android:fromYDelta="0%" android:toYDelta="-100%"
android:duration="1000" />
</set>
答案 0 :(得分:6)
尝试将XML更改为此
动画1
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:shareInterpolator="false">
<translate android:fromXDelta="-100%" android:toXDelta="0%"
android:fromYDelta="0%" android:toYDelta="0%"
android:duration="1000"/>
</set>
和animation2
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:shareInterpolator="false">
<translate
android:fromXDelta="0%" android:toXDelta="100%"
android:fromYDelta="0%" android:toYDelta="0%"
android:duration="1000" />
</set>
这是从右到左
之后,您可以使用覆盖暂挂转换来调用它,就像您在问题中使用代码一样
overridePendingTransition(R.anim.animation1, R.anim.animation2);