Я возвращаюсь к своей основной деятельности из фрагмента, и для некоторой логики мне нужно изменить внешний вид значка в меню панели действий.
Это меню на панели действий:
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
tools:context="it.gn.sfa.Main">
<item
android:id="@+id/action_search"
android:actionViewClass="android.widget.SearchView"
android:icon="@drawable/ic_action_search"
android:showAsAction="collapseActionView|ifRoom"
android:title="Search" />
<item
android:id="@+id/action_filter"
android:icon="@drawable/ic_action_filter_empty"
android:showAsAction="ifRoom"
android:title="Filter" />
<item
android:id="@+id/action_new"
android:icon="@drawable/ic_action_new"
android:showAsAction="ifRoom"
android:title="New" />
</menu>
Мне нужно изменить второй элемент (тот, у которого id = action_filter
). Я пробовал разные решения, найденные в другом сообщении. Самый популярный -
mOptionsMenu.getItem(0).setIcon(getResources().getDrawable(R.drawable.ic_action_filter));
но вроде не работает.
С другой стороны getActionBar().setIcon(getResources().getDrawable(R.drawable.ic_action_filter));
меняет логотип, а я этого не хочу.
Как я могу изменить только второй пункт в меню?