Ich will wissen, ob ich den Menüpunkt Symbol nach dem Menü es initialisiert ändern kann, dies ist mein Code:Android: bearbeiten Menüpunkt beim Laden Menü fertig
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);
}
}
}
Ich nenne updateMenuButton
am Ende onCreateOptionsMenu
, aber wenn ich versuche zu diesem zuzugreifen:
this.menu.getItem(R.id.action_home).setIcon(R.drawable.ic_clear_white_24dp);
ich diesen Fehler:
java.lang.IndexOutOfBoundsException: Invalid index 2131624115, size is 1
Ich denke, dass das Menü nicht hinzugefügt wurde? Wenn ich den updateMenuButton()
Anruf am Ende von onCreateOptionsMenu
entferne, kann ich den Menüpunkt sehen.
Wie kann ich tun?
Dank
Sie etwas tun können http://stackoverflow.com/questions/7765184/how-can-i-refresh-the-actionbar-when-onprepareoptionsmenu-switched-menu-entries –