Уж что-то я очень давно ничего не писал, надо бы это исправить:)
Изменим стандартные появления нового активити и его закрытия. Сделаем его плавно появляющимся.
Создаем анимации:
Изменим стандартные появления нового активити и его закрытия. Сделаем его плавно появляющимся.
Создаем анимации:
R.anim.activity_open_enter
<set xmlns:android="http://schemas.android.com/apk/res/android" android:shareInterpolator="false" android:zAdjustment="top" android:duration="2500">
<alpha android:duration="@android:integer/config_shortAnimTime" android:fillAfter="false" android:fillBefore="false" android:fillEnabled="true" android:fromAlpha="0.0" android:interpolator="@android:interpolator/decelerate_cubic" android:toAlpha="1.0" />
<scale android:duration="@android:integer/config_shortAnimTime" android:fillAfter="false" android:fillBefore="false" android:fillEnabled="true" android:fromXScale="1.1" android:fromYScale="1.1" android:interpolator="@android:interpolator/decelerate_quint" android:pivotX="50%p" android:pivotY="50%p" android:toXScale="1.0" android:toYScale="1.0" />
</set>
R.anim.activity_close_bottom
<set xmlns:android="http://schemas.android.com/apk/res/android" android:shareInterpolator="false" android:zAdjustment="bottom" android:duration="2500">
<alpha android:duration="@android:integer/config_shortAnimTime" android:fillAfter="false" android:fillBefore="false" android:fillEnabled="true" android:fromAlpha="0.0" android:interpolator="@android:interpolator/decelerate_cubic" android:toAlpha="1.0" />
<scale android:duration="@android:integer/config_shortAnimTime" android:fillAfter="false" android:fillBefore="false" android:fillEnabled="true" android:fromXScale="1.1" android:fromYScale="1.1" android:interpolator="@android:interpolator/decelerate_quint" android:pivotX="50%p" android:pivotY="50%p" android:toXScale="1.0" android:toYScale="1.0" />
</set>
Ну, а далее дело не хитрое - применяем анимацию к старту активити и,
соотвественно, к окончанию. Тут главный момент, устранить стандартную анимацию, поэтому добавляем
OverridePendingTransition.
startActivity(intent);
overridePendingTransition(R.anim.activity_open_enter,0);
@Overridepublic void finish() {
super.finish();
overridePendingTransition(R.anim.activity_close_bottom,0);
}
No comments:
Post a Comment