Modifier par programmation ActionBar icône

Je reviens à mon activité principale à partir d'un fragment et un peu de logique je dois changer l'apparence d'une icône sur la barre d'action menu.

C'est le menu sur la barre d'action:

<?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>

J'ai du modifier le sencond élément (l'un avec l'id = action_filter).
J'ai essayé différentes solutions trouvées sur les différents post. Les plus notés est

mOptionsMenu.getItem(0).setIcon(getResources().getDrawable(R.drawable.ic_action_filter));

mais ne semble pas fonctionner.

De l'autre côté getActionBar().setIcon(getResources().getDrawable(R.drawable.ic_action_filter)); change le logo, et je ne veux pas.

Comment puis-je changer uniquement le deuxième élément de menu?

Vous pouvez poster tout le code lié à la mOptionsMenu? Plus précisément, quand et comment vous êtes l'instanciation de cette mOptionsMenu variable
J'instancie mOptionsMenu dans onCreateOptionsMenu(Menu menu): mOptionsMenu = menu.
Vérifier ma réponse ici: stackoverflow.com/a/28478791/1038702

OriginalL'auteur Luca | 2014-09-02