Android 如何在我的应用中将状态栏设置为白色背景和黑色文本(黑色图标)

Android 如何在我的应用中将状态栏设置为白色背景和黑色文本(黑色图标),android,statusbar,textcolor,Android,Statusbar,Textcolor,我想在我的应用中将状态栏设置为白色背景和黑色文本(以及黑色图标)。我发现一些应用程序可以做到这一点。但是从谷歌搜索,我找不到任何解决方案。关于如何设置状态栏的颜色,有很多解决方案。也像SystemBarInt一样,它只能设置背景,但不能设置整个状态栏的样式(白色背景和黑色文本或黑色背景和白色文本颜色)。适用于API 21或greator if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {

我想在我的应用中将状态栏设置为白色背景和黑色文本(以及黑色图标)。我发现一些应用程序可以做到这一点。但是从谷歌搜索,我找不到任何解决方案。关于如何设置状态栏的颜色,有很多解决方案。也像SystemBarInt一样,它只能设置背景,但不能设置整个状态栏的样式(白色背景和黑色文本或黑色背景和白色文本颜色)。

适用于API 21或greator

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
                Window window = getWindow();
                window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);
                window.clearFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
                window.setStatusBarColor(getResources()
                        .getColor(R.color.YOurColorname));
            }

这是您的values-v21/styles.xml,要在棒棒糖上启用此功能: 它只能在API 21以上工作

  <resources>
        <!-- Base application theme. -->
        <style name="AppTheme" parent="Theme.AppCompat.Light">
            <item name="colorPrimary">@color/color_primary</item>
            <item name="colorPrimaryDark">@color/color_secondary</item>
            <item name="colorAccent">@color/color_accent</item>
            <item name="android:statusBarColor">@color/color_primary</item>
        </style>
    </resources>

@彩色/彩色原色
@颜色/颜色/辅助
@颜色/颜色口音
@彩色/彩色原色

我发现此解决方案使用以下代码:

  getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN);
 getWindow().addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS); 
  getWindow().clearFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);

getWindow().setStatusBarColor(Color.TRANSPARENT);// SDK21

这不容易找到,所以我不怪你问,但这里已经回答了:谢谢你的推荐。我已经阅读了这个答案。我想找到一个可以在API21或更高版本中实现这种效果的解决方案。这是不可能的。Android在API 23中引入了改变状态栏中文本颜色的选项。对我有用的信息。谢谢