Я создаю анимацию, которая будет отображаться, когда пользователь переходит к определенному действию. В основном, эта активность скользит вверх, чтобы ее можно было показывать, и слайды закрываются. Я использую overridePendingTransition, чтобы сделать эту анимацию.
Но на слайде есть уродливый эффект. Это можно увидеть на снимке экрана:
Посмотрите на этот серый прямоугольник, показанный на закрытии активности. Почему это показано?
Я думал, что это будет Android android.R.id.content для Android, поэтому я попытался изменить его фон, но это не сработало.
Я использую ActionBarSherlock, и код показан ниже:
slide_in_from_bottom.xml
<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:fromYDelta="100%p"
android:toYDelta="0%p"
android:duration="@android:integer/config_mediumAnimTime"/>
slide_out_to_bottom.xml
<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:fromYDelta="0%p"
android:toYDelta="100%p"
android:duration="@android:integer/config_mediumAnimTime"/>
nothing.xml
<alpha xmlns:android="http://schemas.android.com/apk/res/android"
android:duration="0" android:fromAlpha="1" android:toAlpha="1"/>
Запуск активности:
Intent intent = new Intent();
intent.setClass(getActivity(), PlayerActivity.class);
startActivity(intent);
getActivity().overridePendingTransition(R.anim.slide_in_from_bottom, R.anim.nothing);
Закрытие операции:
@Override
public void onBackPressed() {
finish();
overridePendingTransition(R.anim.nothing, R.anim.slide_out_to_bottom);
}