我有一个基本活动,其布局定义如下:
<?xml version="1.0" encoding="utf-8"?>
<android.support.v4.widget.DrawerLayout
android:id="@+id/drawer_layout"
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true"
tools:openDrawer="end">
<include
layout="@layout/app_bar_base"
android:layout_width="match_parent"
android:layout_height="match_parent"/>
<android.support.design.widget.NavigationView
android:id="@+id/nav_view"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_gravity="start"
android:fitsSystemWindows="true"
app:headerLayout="@layout/nav_header_base"
app:menu="@menu/activity_base_drawer"/>
<FrameLayout
android:id="@+id/right_drawer"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="end"
android:layout_marginTop="200dp"/>
</android.support.v4.widget.DrawerLayout>
include
部分是我设置toolbar
的地方,并且有一个容器会收到fragment
。
您可以在id
看到,FrameLayout
将充当right drawer
。
我希望drawer
放在toolbar
旁边。
我尝试在抽屉中添加android:layout_marginTop
但没有成功(200dp
值仅用于测试,最终值为56dp
)。当我打开抽屉时,它占据了所有屏幕高度(波纹管状态栏)。
如何将frame layout
放在toolbar
下方?
答案 0 :(得分:0)
使用垂直方向的线性布局,并将工具栏和框架布局放在里面。使用&#34; wrap_content&#34;在框架布局的高度属性中,以便它不会占用其父级的全高..
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<include
layout="@layout/app_bar_base"
android:layout_width="match_parent"
android:layout_height="match_parent"/>
<FrameLayout
android:id="@+id/right_drawer"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="end"
android:layout_marginTop="200dp"/>
</LinearLayout>