オプションメニューからナビゲーションメニューにいくつかのメニュー項目を移動しています。私のアプリでは、https://developer.android.com/reference/android/support/design/widget/NavigationView.htmlAndroid NavigationViewが表示されるたびにアイテムをプログラムで無効にして有効にする方法
で説明されているようなメニューで表示されたナビゲーションビューを使用しています。メインアクティビティのWebView
にあるwebView.goBack()
という項目があります。オプションメニューに配置されたときは、webView.canGoBack()
の場合にのみ有効になりました。それ以外の場合は無効になっています(グレー表示)。これを実現するために、onPrepareOptionsMenu()
は、コマンドに含ま:オプションメニューが表示されようとしているたびに呼び出されonPrepareOptionsMenu()
として
back.setEnabled(webView.canGoBack());
を、これは正しくWebView
の状態を反映するために、メニュー項目の状況を更新してしまいます。
しかし、NavigationViewでこの動作を再現することはできませんでした。 NavigationViewが準備されるたびに呼び出されるonPrepareOptionsMenu()
に似たメソッドまたはクラスがありますか?
PS。同様の質問に対処した他の人は、常に、リスト・ビューを使用して参照していました。リスト・ビューは、ナビゲーション・ドロワーを配置する古い方法でした。この質問は、具体的にはNavigationViewをメニューと共に使用することに関する。
はい、わかりました。しかし、NavigationViewが表示されるたびにメニューアイテムのステータスを更新するためにどのようなメソッドをオーバーライドしますか? –