更改片段更改状态栏颜色[Android Lollipop]

我想知道如何根据当前活动的片段(在5.0 Lollipop上)更改StatusBar颜色.目前,我根据片段我更改了ActionBar颜色,但现在我要让StatusBar颜色也改变,以便在棒棒糖设备上看起来不错.

我已经尝试使用setStyle以编程方式根据片段更改主题,但它似乎没有更改状态栏颜色.

任何想法将不胜感激!

解决方法

您是否尝试使用Window.setStatusBarColor更改状态栏的颜色?例如,您可以执行以下操作将状态栏颜色以编程方式更改为红色.
getWindow().setStatusBarColor(Color.RED);

可以找到setStatusBarColor的文档here.您还可以阅读有关如何使用Customize the Status Bar的文档.

注意:此方法仅适用于棒棒糖或以上.

如果您看到一个意想不到的颜色,请确保要传递的整数值是整数,而不是资源ID.

getWindow().setStatusBarColor(getResources().getColor(R.color.custom_color)); // RIGHT
getWindow().setStatusBarColor(R.color.custom_color); // WRONG

相关文章

Android 如何解决dialog弹出时无法捕捉Activity的back事件 在...
Android实现自定义带文字和图片的Button 在Android开发中经常...
Android 关于长按back键退出应用程序的实现最近在做一个Andr...
android自带的时间选择器只能精确到分,但是对于某些应用要求...