回答

2

Google IO 2014應用程序使用ScrimInsetsFrameLayout爲狀態欄着色(導航抽屜會覆蓋狀態欄)。我強烈建議使用它我已經嘗試了很多,它效果最好! ;-)

爲了讓ScrimInsetsFrameLayout工作你需要做四兩件事:

1)的ScrimInsetsFrameLayout類添加到您的項目。

2.)使用ScrimInsetsFrameLayout作爲您活動xml文件中的抽屜列表的根元素。重要提示:設置android:fitsSystemWindowstrueDrawerLayoutScrimInsetsFrameLayout

3)在你活動主題(-v21)XML添加行<item name="android:statusBarColor">@android:color/transparent</item>。 (否則,「正常」狀態欄將覆蓋ScrimInsetsFrameLayout的狀態欄。)

4)在您的活動,初始化抽屜和DrawerLayout像往常一樣,然後調用 drawerLayout.setStatusBarBackgroundColor(color)到彩色狀態條。

在Google IO應用中,這是在setupNavDrawer()方法中完成的BaseActivity