如何使状态栏完全变白?

时间:2019-12-09 23:25:21

标签: java android xml

在使用我的应用程序的不同时间,状态栏的颜色会发生变化,右边的颜色与第一张图片一样为白色,但有时会变成灰色。这会是什么? Android bug? Here it is completely white Here it is already gray, after entering the app time after

styles.xml:

<style name="AppTheme" parent="Theme.AppCompat.DayNight.NoActionBar">
    <item name="colorPrimary">@color/primary</item>
    <item name="android:windowLightStatusBar">true</item>
    <item name="colorPrimaryDark">#ffffff</item>
    <item name="colorAccent">@color/accent</item>

</style>    

1 个答案:

答案 0 :(得分:2)

要更改上述 api 21 的颜色,只需将其添加到您的styles.xml

<item name="android:statusBarColor">@color/statusBarColor</item>

如果您希望状态栏显示浅色,也可以添加此行

<item name="android:windowLightStatusBar">true</item>

编辑:

如果颜色一直在变化,请尝试通过以下方式在您的活动中更改颜色:

 if (Build.VERSION.SDK_INT >= 21) {
    getWindow().setNavigationBarColor(ContextCompat.getColor(this, R.color.white)); // Navigation bar the soft bottom of some phones like nexus and some Samsung note series  
    getWindow().setStatusBarColor(ContextCompat.getColor(this,R.color.white)); //status bar or the time bar at the top
  }