0

我使用以下代码在 Android 中创建了一个“返回主页”类型的按钮:

Intent i=new Intent(this, Home.class);
i.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(i);

然而,当 android 转换到 Home 活动时,它会从右向左滑动活动,给用户一种新活动启动的印象。然后用户期望当按下“返回”时,前一个活动会出现,显然情况并非如此。

如何告诉 android 向后滑动(即从左到右),以便过渡确实给人以关闭先前活动的外观?

4

2 回答 2

1

overridePendingTransition()您可以通过调用after来覆盖动画startActivity()

从谷歌看这个例子。

看看如何创建动画资源

于 2011-06-03T22:00:56.450 回答
1

更多细节(从我对这个问题的回答中复制):

为了专门获得标准的“后退按钮”转换,我使用这些作为enterAnimexitAnimoverridePendingTransition(int enterAnim, int exitAnim)

push_right_in.xml

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
    <translate android:fromXDelta="-100%p" android:toXDelta="0" android:duration="@android:integer/config_shortAnimTime"/>
    <alpha android:fromAlpha="0.0" android:toAlpha="1.0" android:duration="@android:integer/config_shortAnimTime" />
</set>

push_right_out.xml

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
    <translate android:fromXDelta="0" android:toXDelta="100%p" android:duration="@android:integer/config_shortAnimTime"/>
    <alpha android:fromAlpha="1.0" android:toAlpha="0.0" android:duration="@android:integer/config_shortAnimTime" />
</set>
于 2011-06-27T17:52:12.233 回答