Android设置状态栏文字颜色
时间: 2023-05-22 13:03:52 浏览: 77
你可以使用以下代码设置 Android 状态栏文字颜色:
```java
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
View decor = getWindow().getDecorView();
if (decor != null) {
int flags = decor.getSystemUiVisibility();
if (dark) {
flags |= View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR;
} else {
flags &= ~View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR;
}
decor.setSystemUiVisibility(flags);
}
}
```
其中,dark 参数是一个布尔值,用于指示你是否想要设置暗色文字。如果你想要设置浅色文字,可以将 dark 设置为 false。
注意,这个方法只能在 Android 6.0(API 级别 23)及以上的版本上使用。如果你的 app 支持 Android 5.0(API 级别 21)及以下的版本,你需要使用其它方法来设置状态栏文字颜色。
相关问题
Android设置顶部状态栏字体颜色
在 Android 6.0(API level 23)及以上的版本中,可以使用以下代码设置状态栏字体颜色:
1. 在 styles.xml 文件中创建一个新的样式:
```
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
<item name="android:windowLightStatusBar">true</item>
</style>
```
2. 在 AndroidManifest.xml 文件中指定应用程序使用该样式:
```
<application
android:theme="@style/AppTheme">
...
</application>
```
这样设置后,状态栏字体颜色将默认为黑色。如果需要将字体颜色设置为白色,可以在 styles.xml 文件中添加以下代码:
```
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
<item name="android:windowLightStatusBar">true</item>
<item name="android:statusBarColor">@android:color/transparent</item>
</style>
```
这样设置后,状态栏字体颜色将变为白色,并且状态栏背景颜色将变为透明。
Android设置顶部状态栏字体颜色黑色
在 Android 6.0 及以上版本中,可以使用以下方式设置状态栏字体颜色为黑色:
1. 在 styles.xml 文件中创建一个新的主题,继承自 AppCompat 主题,并设置 windowLightStatusBar 属性为 true:
```
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
<item name="windowLightStatusBar">true</item>
</style>
```
2. 在 AndroidManifest.xml 文件中将应用的主题设置为新创建的主题:
```
<application
android:theme="@style/AppTheme"
...>
...
</application>
```
注意:此方式仅适用于 Android 6.0 及以上版本,并且只在支持的设备上生效。在其他设备上会默认显示白色字体。