Android - Слайд Назад на главный экран - PullRequest
0 голосов
/ 04 июня 2011

Я создал кнопку типа «назад к дому» в Android с помощью кода:

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

Однако, когда Android переходит к домашнему заданию, он перемещает действие справа налево, создавая у пользователя впечатление, что было запущено новое действие. Затем пользователь ожидает, что при нажатии кнопки «назад» всплывет предыдущее действие, что, очевидно, не так.

Как я могу сказать андроиду скользить назад (то есть слева направо), чтобы переход действительно создавал видимость закрытия предыдущих действий?

Ответы [ 2 ]

1 голос
/ 27 июня 2011

Еще немного подробностей (скопировано из моего ответа на этот вопрос ):

Чтобы конкретно получить стандартный переход "кнопка назад", я использую их как enterAnim и exitAnim значения overridePendingTransition(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>
1 голос
/ 04 июня 2011

Вы можете переопределить анимацию, позвонив overridePendingTransition() после startActivity().

Посмотрите на этот пример из Google.

ВзятьПосмотрите, как создать анимационный ресурс тоже.

...