如何将android状态栏颜色更改为白色,状态栏图标颜色更改为灰色

我正在尝试将状态栏的颜色更改为带有灰色图标的白色.我已经为这个问题尝试了几乎所有的代码解决方案,但是没有为我工作.

我正在使用这个java fucntion来改变它,我也发布了我的样式(21)代码.

public static void statusBarColor(Window window, Context ctx) {
            if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
                //Window window = getActivity().getWindow();

                window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);
                window.clearFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
                window.setStatusBarColor(ctx.getResources().getColor(R.color.statusbar_color));
            }
        }

这是我的java代码,但它在千万次尝试后无法正常工作.
以下是我的style.xml(21)

 <style name="AppTheme.NoActionBar">
        <item name="windowActionBar">false</item>
        <item name="windowNoTitle">true</item>
        <item name="android:windowDrawsSystemBarBackgrounds">true</item>
        <item name="android:statusBarColor">@android:color/transparent</item>
        <item name="android:windowLightStatusBar" tools:targetApi="23">true</item>   
    </style>

如果你认为它的一些其他问题的副本,那么我现在应该让你尝试3,4页谷歌搜索并实施它们.

最佳答案
这个标志可以实现:

<item name="android:windowLightStatusBar">true</item>

不幸的是,它可以从API 23向上提供,因此您必须在values-v23 / styles.xml中指定它.有关详细信息,请参阅this.

没有任何此功能的后退端口,因此在编写此功能时它不会在任何较低的23上工作.

enter image description here

转载注明原文:如何将android状态栏颜色更改为白色,状态栏图标颜色更改为灰色 - 代码日志