Search code examples
androidandroid-listviewnavigation-drawerandroid-navigationview

Custom Listview in Navigation Drawer


How can I customize a ListView in a Navigation Drawer, like the one in the 2nd picture here.


Solution

  • You can use NavigationView of Android Design Support Library (see: Android Developers Blog).

    With NavigationView, you don't have to use ListView any more. You can populate the drawer menu simply with menu.xml.

    <android.support.v4.widget.DrawerLayout
        xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:app="http://schemas.android.com/apk/res-auto"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:fitsSystemWindows="true">
    
        <!-- your content layout -->
    
        <android.support.design.widget.NavigationView
            android:layout_width="wrap_content"
            android:layout_height="match_parent"
            android:layout_gravity="start"
            app:headerLayout="@layout/drawer_header"
            app:menu="@menu/drawer"/>
    
    </android.support.v4.widget.DrawerLayout>