我检查了 API 代码附带的过渡动画,我发现了动画 zoom_enter 和 zoom_exit,其中 Activity 1 下沉以显示 Activity 2。我需要反过来。我需要 Activity 2 从内部缩小并位于顶部。 (我希望你能理解我)。这种类型的动画在 iPhone 屏幕转换上是相同的。
下面的代码是我所拥有的我不需要的效果。 这是 zoom_enter.xml 的代码
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:interpolator="@android:anim/decelerate_interpolator">
<scale android:fromXScale="2.0" android:toXScale="1.0"
android:fromYScale="2.0" android:toYScale="1.0"
android:pivotX="50%p" android:pivotY="50%p"
android:duration="@android:integer/config_mediumAnimTime" />
</set>
这里是 zoom_exit.xml 的代码
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:interpolator="@android:anim/decelerate_interpolator"
android:zAdjustment="top">
<scale android:fromXScale="1.0" android:toXScale=".5"
android:fromYScale="1.0" android:toYScale=".5"
android:pivotX="50%p" android:pivotY="50%p"
android:duration="@android:integer/config_mediumAnimTime" />
<alpha android:fromAlpha="1.0" android:toAlpha="0"
android:duration="@android:integer/config_mediumAnimTime"/>
</set>
然后在 startActivity 之后调用下面的方法:
overridePendingTransition(R.anim.zoom_enter, R.anim.zoom_exit);
任何人都可以建议我如何更改上述文件以进行我所解释的屏幕转换吗?
最佳答案
在 zoom_enter.xml 中尝试此操作并从 zoom_exit.xml 中删除动画。你会看到更好的效果。
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:interpolator="@android:anim/decelerate_interpolator">
<scale android:fromXScale="0.0" android:toXScale="1.0"
android:fromYScale="0.0" android:toYScale="1.0"
android:pivotX="50%p" android:pivotY="50%p"
android:duration="@android:integer/config_mediumAnimTime" />
</set>
希望这对您有所帮助。
关于android - 缩小两个 Activity 之间的过渡动画,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12714248/