【发布时间】:2014-11-04 19:07:38
【问题描述】:
我想知道如何根据当前活动的片段(在 5.0 Lollipop 上)更改状态栏颜色。目前,我根据我所在的 Fragment 更改 ActionBar 颜色,但现在我希望 StatusBar 颜色也更改 - 为了在 Lollipop 设备上看起来不错。
我尝试使用 setStyle 以编程方式根据片段更改主题,但它似乎没有更改状态栏颜色。
任何想法都将不胜感激!
【问题讨论】:
-
你能展示你试过的代码吗?
-
有点乱,但本质上我有一个 FragmentData 对象,它存储我想要的每个片段的样式(除其他外)。每当片段更改时,我将 setStyle 设置为我在该对象中拥有的 mStyle 字段。只是一个旁注:这是改变操作栏颜色的工作,只是状态栏颜色似乎没有设置。
-
是的,当然。这不仅适用于我 - 它适用于任何阅读问题的人。
-
对,这是我现在使用的一段代码:
if (fragmentData != null) { updateActionBarForFragment(fragmentData); mStyle = fragmentData.getStyle(); } setTheme(mStyle);
标签: android android-layout android-fragments android-5.0-lollipop