Ответ 1
В ОС Android 2.0 или более поздней версии я думаю, вы можете использовать метод OverridePendingTransition(), чтобы обеспечить вид перехода между анимациями действий, которые вы ищете.
Во-первых, определите пару ресурсов анимации в /res/anim/. Вот тот, который называется right_slide_out.xml:
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android" android:interpolator="@android:anim/accelerate_decelerate_interpolator">
<translate
android:fromXDelta="0"
android:toXDelta="100%p"
android:duration="500"
/>
</set>
Другой, называемый right_slide_in.xml:
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android" android:interpolator="@android:anim/accelerate_decelerate_interpolator">
<translate
android:fromXDelta="100%p"
android:toXDelta="0"
android:duration="700"
/>
</set>
Затем, когда вы начинаете новое действие, используйте метод OverridePendingTransition, как в:
startActivity(intent);
overridePendingTransition (R.anim.right_slide_in, R.anim.right_slide_out);
Это должно обрабатывать анимацию перехода для запуска активности.
В обратном случае, когда эта деятельность заканчивается, и вы возвращаетесь к первоначальному, это немного более туманно.
Если у вас есть элемент управления пользовательским интерфейсом, который завершает это действие и вызывает Activity.finish(), вы можете сразу добавить переопределитьPendingTransition().
Чтобы обработать случай, когда пользователь завершает действие, нажав кнопку "Назад", используйте что-то вроде следующего:
@Override
public void onBackPressed()
{
this.finish();
overridePendingTransition (R.anim.right_slide_in, R.anim.right_slide_out);
}