在我的Android应用程序中,我需要使用Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK
来设置我的意图标记。我可以删除以前的所有Activities
并以这种方式开始新的Activity
。这是我的代码:
Intent intent = new Intent(Gerenxinxi.this, MainPart.class);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK);
startActivity(intent);
finish();
overridePendingTransition(0,0);
然而,当我使用上面的代码时,我发现了黑屏的闪烁。如果我没有用Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK
设置意图标记,黑屏的闪烁就会消失。我的问题是:设置Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK
时我该怎么做才能避免出现黑屏?
在我写下这个问题之前,我发现有人有类似的问题。这是link然而,这个问题的答案无法解决我的问题。所以我再问这个问题。我希望任何人都可以帮助我。谢谢。
答案 0 :(得分:22)
您看到的这个初始屏幕称为"预览"屏幕。您可以通过在主题中声明这一点来完全禁用它:
android:windowDisablePreview
<style name="Theme.MyTheme" parent="android:style/Theme.Holo">
<!-- This disables the black preview screen -->
<item name="android:windowDisablePreview">true</item>
</style>
答案 1 :(得分:0)
我发现它只有一个解决方案,而不是显示黑屏显示应用程序主题背景。在我的情况下它的白色
<application
android:name="com.my.MyApplication"
android:allowBackup="true"
android:icon="@drawable/launcher"
android:label="@string/app_name"
android:theme="@style/Theme.MyTheme”>
<style name="Theme.MyTheme" parent="android:style/Theme.Holo">
<!-- This disables the black preview screen -->
<item name="android:windowDisablePreview">true</item>
</style>
答案 2 :(得分:0)
试试这个
Intent intent = new Intent(Gerenxinxi.this, MainPart.class);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK | Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
finish();
答案 3 :(得分:0)
以您的风格添加此行
android:windowDisablePreview = true.