当前位置: 首页 > 知识库问答 >
问题:

Android状态栏图标颜色

诸葛康胜
2023-03-14

还有黑色的图标,可能吗?

谢谢

编辑:

M 开发人员预览版中的新增功能:windowLightStatusBar。在主题中打开它会告诉系统使用深色前景,这对于浅色状态栏很有用。请注意,M 预览似乎有一个错误,其中通知图标保持白色,而系统状态图标正确更改为半透明黑色。

共有3个答案

井旺
2023-03-14

如果您的API级别小于23,则必须以这种方式使用它。它对我有用,在v21/样式下声明这一点。

<item name="colorPrimaryDark" tools:targetApi="23">@color/colorPrimary</item>
        <item name="android:windowLightStatusBar" tools:targetApi="23">true</item>
澹台新知
2023-03-14

@eOnOe已经回答了我们如何通过xml改变状态栏色调。但是我们也可以在代码中动态地改变它:

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
    View decor = getWindow().getDecorView();
    if (shouldChangeStatusBarTintToDark) {
        decor.setSystemUiVisibility(View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR);
    } else {
        // We want to change tint color to white again.
        // You can also record the flags in advance so that you can turn UI back completely if
        // you have set other flags before, such as translucent or full screen.
        decor.setSystemUiVisibility(0);
    }
}
古明煦
2023-03-14

是的,可以将其更改为灰色(没有自定义颜色),但这只适用于API 23及以上版本,您只需将它添加到您的values-v23/styles.xml

<item name="android:windowLightStatusBar">true</item>
 类似资料: