发布
社区首页 >问答首页 >导航抽屉上方的深色状态栏

导航抽屉上方的深色状态栏
EN

Stack Overflow用户
提问于 2014-10-31 14:38:16
回答 1查看 781关注 0票数 3

我已经按照如何使用DrawerLayout在ActionBar/Toolbar和状态栏下显示?实现了一个具有材质设计的导航抽屉,但是由于我的抽屉是白色的,这会导致状态栏出现问题。Google /O 2014应用程序在导航抽屉上着色状态栏,它是如何实现这一点的?我在它的源代码里找不到。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-02-10 17:45:49

Google 2014应用程序使用ScrimInsetsFrameLayout来修饰状态栏(导航抽屉将覆盖状态栏)。我强烈推荐使用它,我已经试过很多次了,而且效果最好!

要使ScrimInsetsFrameLayout正常工作,您需要做四件事:

1.)将ScrimInsetsFrameLayout类添加到项目中。

2.)在活动的xml-文件中使用ScrimInsetsFrameLayout作为抽屉列表的根元素。重要事项:将android:fitsSystemWindows设置为true for DrawerLayoutScrimInsetsFrameLayout

3.)在活动主题(-v21) xml中添加行<item name="android:statusBarColor">@android:color/transparent</item>。(否则,“普通”状态栏将覆盖ScrimInsetsFrameLayout的状态栏。)

4.)在您的活动中,像往常一样初始化抽屉和DrawerLayout,然后调用drawerLayout.setStatusBarBackgroundColor(color)来为状态栏着色。

在Google应用程序中,这是在setupNavDrawer()BaseActivity方法中完成的

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26677230

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档