<?xml version="1.0" encoding="utf-8"?> <!-- Copyright (C) 2015 The Android Open Source Project Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. --> <!-- A DrawerLayout is indended to be used as the top-level content view using match_parent for both width and height to consume the full space available. See https://www.google.com/design/spec/patterns/navigation-drawer.html#navigation-drawer-specs for the full spec of a drawer in Material design. --> <android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/drawer_layout" android:layout_width="match_parent" android:layout_height="match_parent" android:fitsSystemWindows="true"> <!-- As the main content view, the view below consumes the entire space available using match_parent in both dimensions. Note that this child does not specify android:layout_gravity attribute. --> <LinearLayout android:id="@+id/content" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> <!-- This will be set as the support action bar of the activity at runtime. It needs to be a dynamic runtime call for correct vertical layering of the drawer and the toolbar. --> <android.support.v7.widget.Toolbar android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" /> <ScrollView android:layout_width="match_parent" android:layout_height="match_parent" android:scrollbarStyle="outsideOverlay"> <TextView android:id="@+id/content_text" android:layout_width="match_parent" android:layout_height="match_parent" android:text="@string/drawer_layout_summary" android:textAppearance="?android:attr/textAppearanceMedium" android:padding="16dp"/> </ScrollView> </LinearLayout> <!-- android:layout_gravity="start" tells DrawerLayout to treat this as a sliding drawer on the starting side, which is left for left-to-right locales. The drawer is given arbitrary initial width and extends the full height of the container. A solid background is used for contrast with the content view. android:fitsSystemWindows="true" tells the system to have DrawerLayout span the full height of the screen, including the system status bar on Lollipop+ versions of the plaform. The actual width of drawer will be determined at runtime based on the screen size according to the Material spec. --> <ListView android:id="@+id/start_drawer" android:layout_width="wrap_content" android:layout_height="match_parent" android:layout_gravity="start" android:background="#333333" android:fitsSystemWindows="true"/> <!-- android:layout_gravity="end" tells DrawerLayout to treat this as a sliding drawer on the ending side, which is right for left-to-right locales. The drawer is given arbitrary initial width and extends the full height of the container. A solid background is used for contrast with the content view. The actual width of drawer will be determined at runtime based on the screen size according to the Material spec. --> <FrameLayout android:id="@+id/end_drawer" android:layout_width="wrap_content" android:layout_height="match_parent" android:layout_gravity="end" android:background="#808080"/> </android.support.v4.widget.DrawerLayout>