【发布时间】:2019-12-16 19:53:26
【问题描述】:
现在this specific page does describe 一种在不同活动的布局之间进行动画处理的方法,但问题是该 API 仅支持 android 5.0 及更高版本,所以我想知道动画的方式是什么(如过渡或任何其他类型的淡入淡出/滑入等)可以用于两个不同活动中的布局。
【问题讨论】:
标签: android animation android-4.4-kitkat
现在this specific page does describe 一种在不同活动的布局之间进行动画处理的方法,但问题是该 API 仅支持 android 5.0 及更高版本,所以我想知道动画的方式是什么(如过渡或任何其他类型的淡入淡出/滑入等)可以用于两个不同活动中的布局。
【问题讨论】:
标签: android animation android-4.4-kitkat
您无法在 Lollipop 版本之前的主题上设置过渡,但您仍然可以以编程方式使用动画。
这是一个动画示例,新活动在首次创建时滑入,而当您按下后退按钮时则相反的运动。
left_in.xml
<set>
<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:fromXDelta="-100%"
android:toXDelta="0"
android:interpolator="@android:anim/decelerate_interpolator"
android:duration="500"/> //in milliseconds
</set>
right_in.xml
<set>
<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:fromXDelta="100%"
android:toXDelta="0"
android:interpolator="@android:anim/decelerate_interpolator"
android:duration="500"/>
</set>
left_out.xml
<set>
<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:fromXDelta="0"
android:toXDelta="-100%"
android:interpolator="@android:anim/decelerate_interpolator"
android:duration="500"/>
</set>
right_out.xml
<set>
<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:fromXDelta="0"
android:toXDelta="100%"
android:interpolator="@android:anim/decelerate_interpolator"
android:duration="500"/>
</set>
在您的活动中,您可以按如下方式调用动画:
开始时:overridePendingTransition(R.anim.right_in, R.anim.left_out);
后按:overridePendingTransition(R.anim.left_in, R.anim.right_out);
或以上任意组合。
注意overridePendingTransition 上的第一个动画用于传入活动,第二个用于传出活动。
【讨论】:
set 和 translate 标签,所以我也想了解这一点。