如何在 Android 中更改状态栏图标的颜色?

Posted

技术标签:

【中文标题】如何在 Android 中更改状态栏图标的颜色?【英文标题】:How to change status bar icons color in Android? 【发布时间】:2021-10-13 02:21:00 【问题描述】:

我想将状态栏图标的颜色从白色更改为我自己的自定义颜色,以便它适用于所有版本。我尝试以下代码,但我做不到。你能帮我吗?


我使用的代码,但此代码不是 APIS + 23 的唯一解决方案,不适用于低 API(API 16、API 17 等)。

getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR);

我要更改的配色方案。

color #5DD6D6

【问题讨论】:

据我所知,您无法在 android 上为状态栏图标着色。您可以将它们设置为白色或深色(浅色状态栏)。 状态栏可以是灰色或白色,具体取决于主题 无论我做什么,我都无法调整我想要的颜色 我把颜色设为灰色。但是在较低的 API ANDROID 中不起作用 你有什么好的方法来处理低API,我可以更容易使用吗? 【参考方案1】:

您实际上不能像那样更改 android 中的状态栏图标颜色。您仍然可以将状态栏颜色更改为您想要的任何颜色,但对于状态栏图标,只有 2 个选项 - 浅色(白色)或深色(灰色)。

如果您想使用白色图标,只需将<item name="android:windowLightStatusBar">false</item> 属性放在您的基本应用程序主题中。对于深色图标<item name="android:windowLightStatusBar">true</item>

您也可以像这里提到的那样以编程方式进行 - https://***.com/a/39596725/10357086

【讨论】:

是的,我做到了,但对于较低的 API,我无法稳定。

以上是关于如何在 Android 中更改状态栏图标的颜色?的主要内容,如果未能解决你的问题,请参考以下文章

如何更改 Android 中的状态栏图标颜色?

Android:是不是可以更改 Android Lollipop 状态栏中图标的颜色

如何自定义状态栏图标和文字颜色?例如。状态栏背景:白色,状态栏图标颜色,文字:红色

状态栏中图标的颜色 (Flutter)

如何根据设置的主题更改颤动中的状态栏图标和文本颜色?

更改 Android 上的导航栏图标颜色