Сделать новый вид активности за старым во время перехода
То, что я пытаюсь достичь, – это переопределить анимацию начала работы.
У анимации должно сложиться впечатление, что старая активность находится поверх новой активности, а затем скользит вниз и выходит из экрана, чтобы показать новую активность. Я пробовал несколько способов, таких как использование overridePendingTransition(startAnim, exitAnim)
Но проблема заключается в том, что они оба ожидают на той же временной шкале. Поэтому overridePendingTransition(R.anim.hold, R.anim.exit_slide_down);
Вы никогда не видите анимацию выхода, потому что новая активность находится сверху. Можно ли это сделать с помощью frameworks?
- В JavaFX как перемещать спрайт по экрану?
- Как использовать функцию slideDown (или показать) в строке таблицы?
- Анимировать настраиваемый диалог
- Как сделать анимированный сюжет в Matlab
- Как сделать плавное rotation изображения в Android?
- Как оживить просмотр с переводом анимации в Android
- Изменение размеров макетов программным способом (как анимация)
- Цепочки анимации jQuery, которые влияют на различные элементы
- CSS3 Цепная анимация
- Как создать управление вращающимся колесом?
- Как вы одушевляете линию на canvasе в C #?
- iPhone WebKit CSS анимации вызывают мерцание
- как я могу использовать анимацию в cocos2d?
Фактически, я нашел свойство под названием android:zAdjustment
в файлах анимации.
Если я поставлю android:zAdjustment="bottom"
в hold.xml
(экран 2) и android:zAdjustment="top"
в push_down_out.xml
(экран 1), тогда я могу получить желаемый эффект.
Это касается проблемы порядка z (я предположил, что это была проблема с таймингами анимации, поэтому я лаял неправильное дерево).
Джон
Я пытаюсь решить ваше решение в примере проекта, и я получил его работу с этим кодом:
Вызвать анимацию с помощью:
startActivity(new Intent(this, Activity2.class)); overridePendingTransition(R.anim.push_down_in,R.anim.push_down_out);
R.anim.push_down_in:
R.anim.push_down_out:
Решение, которое работает для меня:
R.anim.exit_slide_down
…а потом
Intent intent = new Intent(activity, SecondActivity.class); startActivity(intent); activity.overridePendingTransition(0, R.anim.exit_slide_down);