1
如何從工具欄中將圖標更改爲使用bbdd中顯示的方法獲得的新圖標。 問題是我無法訪問更新活動以便能夠更改圖標的事件。 我嘗試使用onPrepareOptionsMenu方法,但我無法使其工作。 我一直沒有能夠通過將代碼放入onStart來做到這一點,因爲它告訴我菜單對象是空的或無效的。將圖標更改爲工具欄Android
public boolean onPrepareOptionsMenu(Menu menu) {
menu.clear();
Drawable iconoMenu = obtenerIconoMenuCarro();
getMenuInflater().inflate(R.menu.menu_categorias, menu);
menu.getItem(0).setIcon(iconoMenu);
return super.onPrepareOptionsMenu(menu);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.menu_categorias, menu);
Drawable iconoMenu = obtenerIconoMenuCarro();
menu.getItem(0).setIcon(iconoMenu);
return true;
}
我的活動通過AppCompactActivity擴展並通過AdapterView加載。 當我回到fragmentDialog或下一個活動後,我遇到了問題。
感謝。
本帖](http://stackoverflow.com/questions/19882443/how-to-change-menuitem-icon-in-actionbar-programatically)有許多選項,你想要做什麼。你可以設置全局布爾值,當你想更新菜單項時,通過調用'invalidateOptionsMenu()',將布爾值更改爲true。然後在'onPrepareOptionsMenu'中,如果布爾值爲true,則更改圖標而無需清除菜單。 – Fllo
謝謝,我請求解決問題。 – ferdiado
@ferdiado呃,什麼是'請求'? –