Activity的幻灯片动画,overridePendingTransition具有奇怪的效果

Fer*_*rgo 13 android android-intent android-animation android-activity

我正在创建一个动画,以便在用户进入特定活动时显示.基本上,此活动向上滑动以显示并向下滑动以关闭.我正在使用overridePendingTransition来实现这个动画.

但幻灯片有一个丑陋的效果.它可以在屏幕截图中看到: 屏幕截图

查看正在关闭的活动上显示的灰色矩形.它为什么显示?

我认为这将是Android的android.R.id.content视图,所以我试图改变它的背景,但它没有用.

我正在使用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"/>
Run Code Online (Sandbox Code Playgroud)

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"/>
Run Code Online (Sandbox Code Playgroud)

nothing.xml

<alpha xmlns:android="http://schemas.android.com/apk/res/android"
    android:duration="0" android:fromAlpha="1" android:toAlpha="1"/>
Run Code Online (Sandbox Code Playgroud)

开始活动:

Intent intent = new Intent();
intent.setClass(getActivity(), PlayerActivity.class);
startActivity(intent);

getActivity().overridePendingTransition(R.anim.slide_in_from_bottom, R.anim.nothing);
Run Code Online (Sandbox Code Playgroud)

关闭活动:

@Override
public void onBackPressed() {
    finish();
    overridePendingTransition(R.anim.nothing, R.anim.slide_out_to_bottom);
}
Run Code Online (Sandbox Code Playgroud)

Fer*_*rgo 5

我在这里找到了问题的答案:

/sf/answers/447752581/

我刚创建了一个BaseActivity,我的所有活动都是子类化,并在onCreate中添加了以下代码:

ColorDrawable colorDrawable = new ColorDrawable( Color.TRANSPARENT );
getWindow().setBackgroundDrawable( colorDrawable );
Run Code Online (Sandbox Code Playgroud)