缩小两个活动之间的过渡动​​画

Hus*_*ein 3 android android-animation

我检查了API代码附带的过渡动画,我找到了动画zoom_enter和zoom_exit,其中活动1下沉IN以显示活动2.我需要反过来.我需要活动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>
Run Code Online (Sandbox Code Playgroud)

这是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>
Run Code Online (Sandbox Code Playgroud)

然后在startActivity之后我调用下面的方法:

 overridePendingTransition(R.anim.zoom_enter, R.anim.zoom_exit);
Run Code Online (Sandbox Code Playgroud)

任何人都可以建议我如何更改上述文件,以解释我的屏幕转换?

小智 12

在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>
Run Code Online (Sandbox Code Playgroud)

希望这可以帮助.

  • 需要做什么:"从zoom_exit.xml中删除动画"? (3认同)
  • @Jasper 用户 0 用于该参数 overridePendingTransition(R.anim.zoom_enter_new, 0); (2认同)