如何修改Android状态栏字体?themes.xml对应配置属性咨询
解决方案
你需要通过android:windowLightStatusBar属性来调整状态栏字体与图标的显示颜色,该属性仅在Android 6.0(API 23,版本代号M)及以上系统生效。
- 属性值为
true时,状态栏文字、图标会变为深色,适配浅色状态栏背景 - 属性值为
false时,状态栏文字、图标会变为白色,适配深色状态栏背景
你可以在当前的Light主题配置中新增该属性即可,修改后示例如下:
<style name="Light" parent="Theme.Notepad"> <!-- Primary brand color. --> <item name="colorPrimary">@color/colorPrimary</item> <item name="colorPrimaryVariant">@color/background</item> <item name="colorOnPrimary">@color/black</item> <!-- Secondary brand color. --> <item name="colorOnSecondary">@color/black</item> <!-- Status bar color. --> <item name="android:statusBarColor" tools:targetApi="l">?attr/colorPrimaryVariant</item> <!-- 新增状态栏文字颜色配置 --> <item name="android:windowLightStatusBar" tools:targetApi="m">true</item> <!-- Customize your theme here. --> <item name="android:colorBackground">@color/background</item> <item name="android:textColorPrimary">@color/black</item> </style>
如果你使用的是AppCompat或Material Components兼容主题,也可以使用不带android:前缀的windowLightStatusBar属性,兼容库会自动完成不同系统版本的适配逻辑。
内容的提问来源于stack exchange,提问作者user15664353
相关产品推荐
相关产品推荐

