tab studio medium google android android-support-library android-menu android-design-library android-navigationview

android - studio - navigation drawer medium



¿Cómo puedo obtener el elemento del menú en NavigationView? (3)

Creo que primero deberías obtener el menú así:

navigationView.getMenu().findItem(R.id.login).setVisible(false);

El aspecto principal de este código es llamar a navigationView.getMenu () para obtener el menú de este. Tendrás una referencia del menú inflado actual y llamar a findViewById () y luego podrás hacer lo que quieras.

Por grupo de artículo ex: -

<group android:id="@+id/group_1" android:checkableBehavior="single" android:visible="false"> ...

y luego puedes controlar esto usando: -

navigationView.getMenu().setGroupVisible(R.id.group_1, true)

<android.support.design.widget.NavigationView android:id="@+id/drawer_nav" android:layout_width="wrap_content" android:layout_height="match_parent" android:layout_gravity="start" android:theme="@style/Theme.AppCompat.Light.NoActionBar" app:headerLayout="@layout/drawer_header" app:menu="@menu/menu_drawer" />

Estoy usando android.support.design.library para el diseño de materiales.

Lo que quiero es ocultar algunos elementos del menú cuando el usuario no ha iniciado sesión.

Ahora tengo problemas para obtener el elemento de menú en NavigationView .

Yo he tratado:

MenuItem logoutItem = (MenuItem) mNavigationView.findViewById(R.id.menu_logout); logoutItem.setVisible(false);

Pero no está funcionando.

¿Cómo puedo hacer esto?

Gracias.



solo usa debajo de la manera

nav_draw = (NavigationView) findViewById(R.id.nav_draw); nav_draw.getMenu().findItem(R.id.navigation_item_1).setVisible(false);