我正在创建要在用户进行特定 Activity 时显示的动画。基本上,这个 Activity 向上滑动显示,向下滑动关闭。我正在使用 overridePendingTransition 来制作此动画。
但是幻灯片有一个丑陋的效果。可以在屏幕截图中看到:
查看正在关闭的 Activity 上显示的灰色矩形。为什么显示?
我以为会是Android的android.R.id.content View ,所以我尝试改变它的背景,但没有成功。
我正在使用 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"/>
开始 Activity :
Intent intent = new Intent();
intent.setClass(getActivity(), PlayerActivity.class);
startActivity(intent);
getActivity().overridePendingTransition(R.anim.slide_in_from_bottom, R.anim.nothing);
结束 Activity :
@Override
public void onBackPressed() {
finish();
overridePendingTransition(R.anim.nothing, R.anim.slide_out_to_bottom);
}
最佳答案
我在这里找到了问题的答案:
https://stackoverflow.com/a/6396465/1140713
我刚刚创建了一个 BaseActivity,我的所有 Activity 都是子类,并在 onCreate 中添加了以下代码:
ColorDrawable colorDrawable = new ColorDrawable( Color.TRANSPARENT );
getWindow().setBackgroundDrawable( colorDrawable );
关于android - 带有 overridePendingTransition 的 Activity 的滑动动画有奇怪的效果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15973905/