android nullpointerexception navigation-drawer menuitem android-navigation-drawer

android-Activar y desactivar MenuItem en el diseño de la actividad del cajón de navegación



nullpointerexception navigation-drawer (1)

Puede acceder al menú desde NavigationView.getMenu ()

A continuación está el código:

NavigationView navigationView= findViewById(R.id.nav_id_in_layout) Menu menuNav=navigationView.getMenu(); MenuItem nav_item2 = menuNav.findItem(R.id.nav_item2); nav_item2.setEnabled(false)

Tengo una aplicación creada usando el diseño de la Activity cajón de navegación. Y necesito activar / desactivar algunos elementos mediante programación

Ejemplo de menú

Ejemplo: Deseo desactivar el ID del elemento de menú nav_item2

Intenté hacer ...

MenuItem nav_item2 = (MenuItem)findViewById(R.id.nav_item2); nav_item2.setEnabled(false);

Y me devuelve una NullPointerException ...

También intenté ...

@Override public boolean onPrepareOptionsMenu(Menu menu) { super.onPrepareOptionsMenu(menu); nav_item2 = menu.findItem(R.id.nav_item2); return true; }

con la misma excepción NullPointerException

Alguien sabe algo que hacer?

nav_header_main_activity.xml (Generado con la creación de diseño)

<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="@dimen/nav_header_height" android:background="@drawable/side_nav_bar" android:gravity="bottom" android:orientation="vertical" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" android:theme="@style/ThemeOverlay.AppCompat.Dark"> <ImageView android:id="@+id/imageView" android:layout_width="199dp" android:layout_height="72dp" android:paddingTop="@dimen/nav_header_vertical_spacing" android:src="@drawable/ciag" /> <TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:paddingTop="@dimen/nav_header_vertical_spacing" android:text="CIAg" android:textAppearance="@style/TextAppearance.AppCompat.Body1" /> <TextView android:id="@+id/textView" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="[email protected]" /> </LinearLayout>

main_activity_navigation_drawer.xml (generado en la creación del diseño)

<group android:checkableBehavior="single"> <item android:id="@+id/nav_save" android:icon="@android:drawable/ic_menu_save" android:enabled="false" android:title="@string/nav_save" /> <item android:id="@+id/nav_graph" android:icon="@drawable/chart_bar" android:enabled="false" android:title="@string/nav_graph" /> <item android:id="@+id/nav_send" android:icon="@drawable/ic_menu_send" android:title="Enviar" /> </group> <item android:title="Configurações"> <menu> <item android:id="@+id/nav_manage" android:icon="@drawable/ic_menu_manage" android:enabled="false" android:title="@string/nav_manage" /> <item android:id="@+id/nav_support" android:icon="@android:drawable/ic_menu_help" android:title="@string/nav_support" /> </menu> </item>