状态栏背景默认是全透明的,图标的颜色由当前的应用决定。
1、静态配置
AndroidManifest.xml中对application或activity的theme添加属性:
<style name="Theme.MyTesting" parent="Theme.MaterialComponents.Light.NoActionBar">
<!-- 状态栏浅色模式(即图标深色) -->
<item name="android:windowLightStatusBar">true</item>
</style>
2、代码里动态设置:
getWindow().getDecorView().setSystemUiVisibility(...);
以下参数
View.SYSTEM_UI_FLAG_VISIBLE(白色图标)
View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR(深色图标)
遇到的问题:
设置完成后无法更改颜色,可以把view打印出来看看是不是每次都使用同一个view去设置,必须要每次都是同一个view才行