如何在启动阶段设置状态栏的背景颜色
how to set the background color of the status bar during the launching phase
在我的应用程序使用 android:targetSdkVersion="14" 之前,但我决定让它更现代一些并将其更新为 android:targetSdkVersion="22"。但是现在我有一个小问题,在启动阶段顶部状态栏的颜色现在是灰色的(就像图片上的那样),我更愿意让它变成黑色(就像以前那样)。
知道我需要做什么才能在启动阶段让我的状态栏再次变黑吗?
注意
我想通过 styles.xml 更改状态栏的颜色。实际上我尝试添加
<item name="android:colorPrimaryDark">@android:color/black</item>
或
<item name="android:statusBarColor">@android:color/black</item>
没有帮助!这个问题不是其他问题的重复,因为我可以在应用程序启动或完全加载后毫无问题地将 StatusBar 颜色设置为黑色。我需要在 启动阶段 期间为状态栏设置黑色背景,我的意思是当用户单击应用程序的图标时,它们就像一个启动屏幕(定义为黑色通过 <item name="android:windowBackground">@android:color/black</item>
) 但此启动屏幕的状态栏颜色为灰色(仅当 android:targetSdkVersion="22")
试试这个:
// Change color of action bar
ActionBar bar = getActionBar();
bar.setBackgroundDrawable(new ColorDrawable(Color.parseColor("#0099CC")));
最简单的方法是:转到 res -> value -> styles 并添加这个
1:将此添加到您的颜色 xml 文件中
<resources>
<color name="colorPrimary">#3F51B5</color>
<color name="colorPrimaryDark">#000000</color>
<color name="colorAccent">#FF4081</color>
</resources>
2:将此添加到您的 styles.xml 文件中
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<!-- Customize your theme here. -->
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item>
</style>
注:
- colorprimary 用于 Actionbar
- colorPrimaryDark 用于状态栏
- 你可以改变这些颜色,你可以得到你需要的结果。
输出:
希望回答了这个问题如果它有用然后投票
试试这个
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
Window window = getWindow();
window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);
window.setStatusBarColor(ContextCompat.getColor(activity, R.color.background););
}
在我的应用程序使用 android:targetSdkVersion="14" 之前,但我决定让它更现代一些并将其更新为 android:targetSdkVersion="22"。但是现在我有一个小问题,在启动阶段顶部状态栏的颜色现在是灰色的(就像图片上的那样),我更愿意让它变成黑色(就像以前那样)。
知道我需要做什么才能在启动阶段让我的状态栏再次变黑吗?
注意
我想通过 styles.xml 更改状态栏的颜色。实际上我尝试添加
<item name="android:colorPrimaryDark">@android:color/black</item>
或
<item name="android:statusBarColor">@android:color/black</item>
没有帮助!这个问题不是其他问题的重复,因为我可以在应用程序启动或完全加载后毫无问题地将 StatusBar 颜色设置为黑色。我需要在 启动阶段 期间为状态栏设置黑色背景,我的意思是当用户单击应用程序的图标时,它们就像一个启动屏幕(定义为黑色通过 <item name="android:windowBackground">@android:color/black</item>
) 但此启动屏幕的状态栏颜色为灰色(仅当 android:targetSdkVersion="22")
试试这个:
// Change color of action bar
ActionBar bar = getActionBar();
bar.setBackgroundDrawable(new ColorDrawable(Color.parseColor("#0099CC")));
最简单的方法是:转到 res -> value -> styles 并添加这个
1:将此添加到您的颜色 xml 文件中
<resources>
<color name="colorPrimary">#3F51B5</color>
<color name="colorPrimaryDark">#000000</color>
<color name="colorAccent">#FF4081</color>
</resources>
2:将此添加到您的 styles.xml 文件中
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<!-- Customize your theme here. -->
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item>
</style>
注:
- colorprimary 用于 Actionbar
- colorPrimaryDark 用于状态栏
- 你可以改变这些颜色,你可以得到你需要的结果。
输出:
希望回答了这个问题如果它有用然后投票
试试这个
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
Window window = getWindow();
window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);
window.setStatusBarColor(ContextCompat.getColor(activity, R.color.background););
}