android api 21/22,当statusBarColor设置为白色时,状态栏图标不显示

时间:2016-06-28 11:02:43

标签: android android-5.0-lollipop android-5.1.1-lollipop android-statusbar

API 21+支持我正在使用的android:statusBarColor,并在我的主题中设置为白色。在我的Nexus 6P上的API 23上,状态栏图标显示为较暗的色调,因此您可以在白色状态栏上看到它们。

然而,在API 21/22上,图标也会着色为白色,因此它们会在白色背景下消​​失。从我的理解谷歌设置状态栏图标到棒棒糖白色和建议白色背景。是否有setColorFilter()或类似于状态栏中的图标?

这是我的主题:

<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
    <item name="colorPrimary">@color/colorPrimary</item>
    <item name="colorPrimaryDark">@color/gray</item>
    <item name="colorAccent">@color/colorAccent</item>
    <item name="android:statusBarColor">@color/white</item>
</style>

例如,如果我将我的android:statusBarColor更改为#cccccc,那么我将看到白色状态栏图标。但我想给它们着色为深灰色并保持状态栏颜色为白色。

2 个答案:

答案 0 :(得分:1)

查看this属性。我没有对此进行测试,但这应该可行。

答案 1 :(得分:0)

将此用于暗按钮颜色:

<style name="YourTheme" parent="@style/Theme.AppCompat.Light">
    <item name="android:actionBarStyle">@style/YourTheme.ActionBar</item>
</style>

将此项用于浅色按钮颜色:

<style name="YourTheme" parent="@style/Theme.AppCompat.Light.DarkActionBar">
    <item name="android:actionBarStyle">@style/YourTheme.ActionBar</item>
</style>