0
我想知道如果我能它的初始化後,在菜單更改菜單項的圖標,這是我的代碼:安卓完成後編輯菜單項加載菜單
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
super.onCreateOptionsMenu(menu, inflater);
menu.clear();
inflater.inflate(R.menu.right_menu, menu);
this.menu = menu;
updateMenuButton();
}
public void updateMenuButton() {
if (menu != null) {
if (verificato) {
this.menu.getItem(R.id.action_home).setIcon(R.drawable.ic_clear_white_24dp);
} else {
this.menu.getItem(R.id.action_home).setIcon(R.drawable.ic_done_white_24dp);
}
}
}
我打電話updateMenuButton
在onCreateOptionsMenu
年底,但是,當嘗試進入這個:
this.menu.getItem(R.id.action_home).setIcon(R.drawable.ic_clear_white_24dp);
我得到這個錯誤:
java.lang.IndexOutOfBoundsException: Invalid index 2131624115, size is 1
,所以我認爲項目菜單還沒有添加?如果我在onCreateOptionsMenu
末尾刪除updateMenuButton()
呼叫,我可以看到菜單項。
我該怎麼辦?
謝謝
你可以做這樣的事情http://stackoverflow.com/questions/7765184/how-can-i-refresh-the-actionbar-when-onprepareoptionsmenu-switched-menu-entries –