我正在尝试创建一个导航抽屉,就像Material规范中的那个一样(就像新版Gmail应用程序中的那个一样)。请注意,导航抽屉的内容绘制在状态栏后面:
使用克里斯·班恩斯从这个问题中得到的答案,我成功地使我的应用程序中的导航抽屉在状态栏后面绘制;这很好地工作了。但是抽屉内容的绘制并没有成功地在状态栏后面。我希望我的抽屉中的蓝色图像能够显示在状态栏后面,但是该区域绘制的颜色为状态栏的颜色,如此截图所示。
那么,我如何让我的导航抽屉在状态栏后面绘制? 我在下面发布了相关部分的项目。
包含导航抽屉的基本布局:
<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/nav_drawer_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:fitsSystemWindows="true">
<!-- Framelayout to display Fragments -->
<FrameLayout
android:id="@+id/content"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_above="@+id/warning_container" />
<FrameLayout
android:id="@+id/navigation_drawer_fragment_container"
android:layout_width="300dp"
android:layout_height="match_parent"
android:fitsSystemWindows="true"
android:layout_gravity="start">
<fragment
android:id="@+id/navigation_drawer_fragment"
android:name="com.thebluealliance.androidclient.fragments.NavigationDrawerFragment"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:layout="@layout/fragment_navigation_drawer" />
</FrameLayout>
</android.support.v4.widget.DrawerLayout>
我的活动主题
<style name="AppThemeNoActionBar" parent="AppTheme">
<item name="windowActionBar">false</item>
<item name="android:windowNoTitle">true</item>
<item name="android:windowDrawsSystemBarBackgrounds">true</item>
<item name="android:statusBarColor">@android:color/transparent</item>
</style>
在我的活动的
onCreate()
中,我执行以下操作:mDrawerLayout.setStatusBarBackground(R.color.primary_dark);