Android - 过渡期间之前的活动变黑

时间:2013-12-23 22:40:46

标签: android android-animation

我有一个活动,我使用overridePendingTransition设置一个自定义动画,在第一次尝试时工作正常但由于某些原因,当我回到上一个活动时,屏幕在第二次尝试时变黑。我四处搜索,但无法找到解决方案来解决它。继承人自定义动画

<?xml version="1.0" encoding="utf-8"?>
<set
android:interpolator="@android:anim/fade_out"
xmlns:android="http://schemas.android.com/apk/res/android">
<translate 
    android:fromXDelta="0%"
    android:toXDelta="0%"
    android:fromYDelta="0%"
    android:duration="4000"
    />

</set>

我按下这样的按钮来调用overridePendingTransition

OnClickListener click = new OnClickListener() {

            @Override
            public void onClick(View v) {
                Intent panIntent = new Intent(SActivity.this, S2Activity.class);
                panIntent.putExtra(S2Activity.EXTRA_TENANT_INFO, panics.get(position).toString());
                panIntent.putExtra("fromHistory", 0);
                panIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
                startActivity(panIntent);
                overridePendingTransition(R.anim.bounce, R.anim.do_nothing);
            }
        };

我正在寻找的行为是让新活动从右向左滚动,而前一个活动在后台停留,而屏幕不会变黑一秒钟。我玩过持续时间和其他东西。

更新:

即使将所有初始化的位图和资源移动到asynctasks并将事物移动到onResume之后,当新活动进入视图时,之前的活动仍然变黑。我试过设置主题,但也没有任何效果。

1 个答案:

答案 0 :(得分:1)

我最后通过创建一个主题使用android:style / Theme.Translucent作为父级以及之前发布的其他代码来修复此问题。我的主题看起来像这样:

<style name="InvisibleBackgroundTheme" parent="@android:style/Theme.Translucent">
    <item name="android:windowActionBar">true</item>
</style>

我还在其中添加了其他所有内容,以便通过我的应用程序保持主题相同。