読者です 読者をやめる 読者になる 読者になる

無趣味な人

生まれてこの方、無趣味。ハマったものこれといって特になし。

NavigationViewのMenu Itemを動的に非表示に

アプリ開発 Android プログラム

DrawerLayoutとNavigationViewでメニューを作成した。 状態によって一部のMenu Itemを表示したり非表示にしたりしたかった。 動的にメニューを追加しようとした。 が、すべてのメニューをmenu.xmlで定義しておいて動的に非表示にするのが楽だった。

//NavigationView
mNavigationView = (NavigationView) findViewById(R.id.main_navigation_view);
mNavigationView.setNavigationItemSelectedListener(this);

//省略

//非表示にしたい時に以下をする
Menu menu = mNavigationView.getMenu();
MenuItem menuItem1 = menu.findItem(R.id.menu_item_1);
menuItem1.setVisible(false);