在活动之间从底部向上滑动动画
Slide animation from bottom and up between activities
我成功地创建了活动之间的滑动动画,其中新的 activity 从底部向上滑动。问题:向上滑动时,它"pushes"外面的老activity拿走了它的space。我想创建不移动旧 activity 但只是从底部向上滑动到旧 activity 的动画,而旧 activity 静止不动。
slide_in_up.xml:
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate
android:duration="@android:integer/config_mediumAnimTime"
android:fromYDelta="100%p"
android:toYDelta="0" />
</set>
slide_out_down.xml:
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate
android:duration="@android:integer/config_mediumAnimTime"
android:fromYDelta="0"
android:toYDelta="-100%p" />
</set>
用幻灯片开始新 activity 的函数:
override fun startEditProfile() {
startActivity(EditProfileActivity.newIntent(this))
overridePendingTransition(R.anim.slide_in_up, R.anim.slide_out_down)
}
是否可以让新的 activity 从底部滑到顶部,而旧的 activity 不动?
查看关于 overridePendingTransition
两个参数的源代码注释:
@param enterAnim A resource ID of the animation resource to use for
the incoming activity. Use 0 for no animation.
@param exitAnim A resource ID of the animation resource to use for
the outgoing activity. Use 0 for no animation.
因此,如果您希望出口(旧)activity 不动,请将出口动画更改为
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate
android:duration="@android:integer/config_mediumAnimTime"
android:fromXDelta="0%"
android:toXDelta="0%"
android:fromYDelta="0%"
android:toYDelta="0%" />
</set>
或设置 0 表示没有动画
我成功地创建了活动之间的滑动动画,其中新的 activity 从底部向上滑动。问题:向上滑动时,它"pushes"外面的老activity拿走了它的space。我想创建不移动旧 activity 但只是从底部向上滑动到旧 activity 的动画,而旧 activity 静止不动。
slide_in_up.xml:
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate
android:duration="@android:integer/config_mediumAnimTime"
android:fromYDelta="100%p"
android:toYDelta="0" />
</set>
slide_out_down.xml:
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate
android:duration="@android:integer/config_mediumAnimTime"
android:fromYDelta="0"
android:toYDelta="-100%p" />
</set>
用幻灯片开始新 activity 的函数:
override fun startEditProfile() {
startActivity(EditProfileActivity.newIntent(this))
overridePendingTransition(R.anim.slide_in_up, R.anim.slide_out_down)
}
是否可以让新的 activity 从底部滑到顶部,而旧的 activity 不动?
查看关于 overridePendingTransition
两个参数的源代码注释:
@param enterAnim A resource ID of the animation resource to use for the incoming activity. Use 0 for no animation. @param exitAnim A resource ID of the animation resource to use for the outgoing activity. Use 0 for no animation.
因此,如果您希望出口(旧)activity 不动,请将出口动画更改为
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate
android:duration="@android:integer/config_mediumAnimTime"
android:fromXDelta="0%"
android:toXDelta="0%"
android:fromYDelta="0%"
android:toYDelta="0%" />
</set>
或设置 0 表示没有动画