tutorial studio personalizado navegacion crear con como barra and activities android navigation-drawer material-design navigationview

android - studio - ¿Cómo agregar valor de notificación para el elemento en NavigationView para Material Design Drawer?



navigation view (5)

Mi pregunta es muy simple, ¿cómo agregar un derecho de valor de notificación del elemento en NavigationView para Material Design Drawer de esa manera?

¿Hay alguna propiedad en los elementos del menú para definir el cajón?

<menu xmlns:android="http://schemas.android.com/apk/res/android"> <group android:checkableBehavior="single"> <item android:id="@+id/drawer_home" android:checked="true" android:icon="@drawable/ic_home_black_24dp" android:title="@string/home"/> <item android:id="@+id/drawer_favourite" android:icon="@drawable/ic_favorite_black_24dp" android:title="@string/favourite"/> ... <item android:id="@+id/drawer_settings" android:icon="@drawable/ic_settings_black_24dp" android:title="@string/settings"/> </group> </menu>


A partir de algunas investigaciones, he descubierto que no, no hay una manera real de agregar las notificaciones al cajón. Sin embargo, el ejemplo que se muestra en el tutorial de Creación de un cajón de navegación en Desarrolladores muestra cómo forzar un nuevo dibujo cada vez que se abre (y también cómo implementarlo con las hojas del Menú XML). No entra en detalles sobre cómo agregar las notificaciones, pero hay otras fuentes para eso.

Este tutorial es otro tutorial de "cómo hacer un cajón de navegación" con la ventaja de detalles exactos sobre cómo se adaptaron los adaptadores ListView para que se ajusten a un botón de notificación. Creo que esto es más que probable lo que buscas.

¡Buena suerte! Espero que eso ayude.



Esto es posible con NavigationView desde la versión 23 de AppCompat-V7 usando vistas de acción. 1. Cree un diseño para el contador, por ejemplo, nav_drawer_counter.xml :

<TextView xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="wrap_content" android:layout_height="match_parent" android:gravity="center_vertical" android:textColor="@color/colorPrimary"/>

  1. Agregue una referencia a él desde cada elemento para el que desee mostrar un valor de contador en su menu/nav_drawer.xml (asegúrese de usar el espacio de nombres de la app ):

    <item ... app:actionLayout="@layout/activity_main_nav_drawer_menu_counter" />

  2. Agregue un método para establecer un valor en TextView por ejemplo:

    @Override protected void onCreate(Bundle savedInstanceState) { .... setNavItemCount(R.id.nav_notifications, 10); } private void setNavItemCount(@IdRes int itemId, int count) { TextView view = (TextView) navigationView.getMenu().findItem(itemId).getActionView(); view.setText(count > 0 ? String.valueOf(count) : null); }


Oh sí ... Puedes cambiar ese valor de contador.

A partir de las imágenes proporcionadas por usted se ve en vivo, está utilizando el Cajón de navegación de diseño de materiales de Rudson Lima.

En su biblioteca hay una función public void setNewCounterValue(int drawerItemPosition, int counterValue); Dentro de la clase NavigationLiveo .

Espero que utilices su objeto correctamente para llamar a esta función.

La mejor de las suertes... :-)