Android NavigationView grupo de menús divider

La biblioteca de diseño de soporte de Android proporciona NavigationView:

<android.support.design.widget.NavigationView ... app:menu="@menu/navigation_drawer_items" /> 

Menu / navigation_drawer_items:

 <menu xmlns:android="http://schemas.android.com/apk/res/android"> <group android:checkableBehavior="single"> <item .../> ... </group> <group android:checkableBehavior="single"> <item .../> ... </group> </menu> 

¿Cómo agregar divisor, separador o espacio entre grupos (como en la foto)?

Introduzca aquí la descripción de la imagen

Sólo dé un identificador único a cada grupo. Se creará un separador automáticamente.

 <?xml version="1.0" encoding="utf-8"?> <menu xmlns:android="http://schemas.android.com/apk/res/android"> <group android:id="@+id/group_feature" android:checkableBehavior="single"> <item android:id="@+id/navdrawer_item_map" android:checked="true" android:icon="@drawable/ic_drawer_map" android:title="@string/navdrawer_item_map"/> </group> <group android:id="@+id/group_settings" android:checkableBehavior="single"> <item android:id="@+id/navdrawer_item_settings" android:icon="@drawable/ic_drawer_settings" android:title="@string/navdrawer_item_settings"/> </group> </menu> 

Usted hace algo como esto.

 <menu xmlns:android="http://schemas.android.com/apk/res/android"> <group android:checkableBehavior="single"> <item android:id="@+id/nav_home" android:icon="@drawable/ic_dashboard" android:title="Home" /> <item android:id="@+id/nav_messages" android:icon="@drawable/ic_event" android:title="Messages" /> <item android:id="@+id/nav_friends" android:icon="@drawable/ic_headset" android:title="Friends" /> <item android:id="@+id/nav_discussion" android:icon="@drawable/ic_forum" android:title="Discussion" /> </group> <item android:title="Sub items"> <menu> <item android:icon="@drawable/ic_dashboard" android:title="Sub item 1" /> <item android:icon="@drawable/ic_forum" android:title="Sub item 2" /> </menu> </item> </menu> 

Este código se toma de la aplicación de ejemplo de la Biblioteca de Diseño realizada por Chris Barnes https://github.com/chrisbanes/cheesesquare

Lo estoy usando de esta manera:

 <group android:id="@+id/group1" android:checkableBehavior="single"> <item android:id="@+id/menu1" android:icon="@drawable/somedrawable" android:title="Lorem ipsum" /> </group> <group android:id="@+id/group2" android:checkableBehavior="single"> <item android:id="@+id/menu2" android:icon="@drawable/somedrawable" android:title="Dolor it amet" /> </group> 

Las identificaciones son importantes (+ id / group1 y + id / group2). Sin ids no verás divisor. Está funcionando en mi aplicación.

Puede agregar su texto entre <item android:title="title_name"> y </item>

 <?xml version="1.0" encoding="utf-8"?> <menu xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto"> <group android:checkableBehavior="single"> <item android:id="@+id/nav_display_image" android:title="Load Image" android:icon="@drawable/ic_menu_gallery" app:showAsAction="always" app:actionLayout="@layout/switch_nav_drawer"/> <item android:id="@+id/nav_camera" android:icon="@drawable/ic_menu_camera" android:title="Saved News" /> <item android:id="@+id/nav_gallery" android:icon="@drawable/ic_menu_gallery" android:title="Gallery" /> <item android:id="@+id/nav_slideshow" android:icon="@drawable/ic_menu_slideshow" android:title="Slideshow" /> </group> <item android:title="Settings"> <menu> <item android:id="@+id/nav_manage" android:icon="@drawable/ic_menu_manage" android:title="Tools" /> </menu> </item> <item android:id="@+id/about_us" android:icon="@drawable/ic_info_black_24dp" android:title="About Us"></item> </menu> 

Divider en NavigationMenuList logrado mediante el agrupamiento de los elementos del menú, pero asegúrese de que está dando id @ + id grupo que es necesario. A continuación está el código de trabajo para usted

 <?xml version="1.0" encoding="utf-8"?> <menu xmlns:android="http://schemas.android.com/apk/res/android"> <group android:id="@+id/gp_one" android:checkableBehavior="single"> <item android:id="@+id/nav_home" android:icon="@drawable/ic_avatar" android:title="Home" /> </group> <group android:id="@+id/gp_two" android:checkableBehavior="single"> <item android:id="@+id/nav_account" android:icon="@drawable/ic_avatar" android:title="My Account" /> <item android:id="@+id/nav_orders" android:icon="@drawable/ic_avatar" android:title="My Orders" /> <item android:id="@+id/nav_wishlist" android:icon="@drawable/ic_avatar" android:title="My Wishlist" /> </group> <group android:id="@+id/gp_three" android:checkableBehavior="single"> <item android:id="@+id/nav_rateus" android:icon="@drawable/ic_avatar" android:title="Rate Us" /> <item android:id="@+id/nav_share" android:icon="@drawable/ic_avatar" android:title="Share" /> <item android:id="@+id/nav_logout" android:icon="@drawable/ic_avatar" android:title="Logout" /> </group> 

  • TabHost muestra contenido una vez (onCreate)
  • Cerrar Gaveta de navegación sin animación
  • ¿Por qué fragmento no muestra el diseño en mi cajón de navegación
  • Efecto de desplazamiento del menú del cajón de navegación
  • Cajón de navegación - ¿qué hace syncState () y por qué debe llamarse dentro onPostCreate ()?
  • ActionBarCompat + NavigationDrawerFragment no funciona en android 4.0 y 4.1
  • Cajón de navegación coexistente y diseño de panel deslizante
  • Desactivación del cajón de navegación, cambio de botón de inicio / indicador ascendente en fragmentos
  • ¿Cómo configurar el color / estilo personalizado de ActionBar?
  • Esperando que el Cajón de Navegación se cierre antes de inicializar Fragmentos con el lazo vacío while
  • Desactivar la hamburguesa para animar las flechas
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.