【发布时间】:2017-11-05 10:45:28
【问题描述】:
我按照本教程在我的应用程序中实现了一个无布局的初始屏幕:https://www.bignerdranch.com/blog/splash-screens-the-right-way/
我设法更改了 MainActivity 状态栏的颜色,甚至使用主题使其全屏显示。但是,我尝试过的所有方法都不适用于启动画面。可能是因为它不使用布局,而是直接使用drawable作为背景:
<style
name="AppTheme"
parent="@android:style/Theme.Material.Light.NoActionBar">
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item>
<item name="android:textColor">@color/textColor</item>
<item name="iconColor">@color/iconColor</item>
<item name="android:statusBarColor">@color/colorPrimaryDark</item>
<item name="drawerArrowStyle">@style/DrawerArrowStyle</item>
</style>
<style
name="SplashTheme"
parent="AppTheme">
<item name="android:windowBackground">@drawable/splash_screen</item>
</style>
我尝试使用全屏主题,在活动使用的主题中设置 android:statusBarColor,我还尝试了以下两段代码:
View decorView = getWindow().getDecorView();
int uiOptions = View.SYSTEM_UI_FLAG_FULLSCREEN;
decorView.setSystemUiVisibility(uiOptions);
Window window = getWindow();
window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);
window.setStatusBarColor(ContextCompat.getColor(this, android.R.color.transparent));
这 4 种方法适用于我的正常活动,但不适用于启动画面。有什么我可以做的吗?
编辑:我的目标是 minSdkVersion 23
【问题讨论】:
标签: android