MenuItemをメニューで更新しようとすると、IndexOutOfBoundsExceptionが発生します。Androidメニュー、onPrepareOptionsMenuを実行中にIndexOutOfBoundsExceptionをスローする
xmlにmenu_itemを追加しましたが、enable()== falseのときに表示されます。
マイコード:
public boolean onPrepareOptionsMenu(Menu menu) {
if (enable()) {
MenuItem menuItem= menu.getItem(R.id.menu_item);
menuItem.setEnabled(true);
}
return super.onPrepareOptionsMenu(menu);
}
問題に対処する方法は?
乾杯。
その内容にアクセスする前に 'super.onPrepareOptionsMenu'を呼び出すとよいでしょう。代わりに 'Menu.findItem'を使用してください。 – harism
いいえ、getItemをfindItemに変更した後、appは例外を発生しません。魅力のように動作します。 – neciu