如何使用动画集完全以编程方式启动Activity

时间:2012-03-16 18:38:19

标签: android android-layout android-animation

我正在尝试为新活动的显示方式设置动画。默认是滑入。我有一个动画集,我想以某种方式附加到Intent或Activity,以便它在我调用startActivity时启动。

问题是,我需要以编程方式完成此操作。我不能为动画等声明任何XML资源。我该怎么做?

2 个答案:

答案 0 :(得分:3)

以下是一些代码段

startActivity(intent);

overridePendingTransition(R.anim.slide_in_right, R.anim.slide_out_left);

slide_in_right

<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate android:fromXDelta="50%p" android:toXDelta="0"
        android:duration="@android:integer/config_mediumAnimTime"/>
<alpha android:fromAlpha="0.0" android:toAlpha="1.0"
        android:duration="@android:integer/config_mediumAnimTime" />
</set>

slide_out_left

 <set xmlns:android="http://schemas.android.com/apk/res/android">
<translate android:fromXDelta="0" android:toXDelta="-50%p"
        android:duration="@android:integer/config_mediumAnimTime"/>
<alpha android:fromAlpha="1.0" android:toAlpha="0.0"
        android:duration="@android:integer/config_mediumAnimTime" />
</set>

您可以使用这些代码来获得您的欲望效果。

答案 1 :(得分:0)

Activity有一个名为overridePendingTransition()的方法,可用于传递新动画。因此,您只需在onCreate的{​​{1}}中进行调用。