ShareActionProvider nie można kliknąć i nie renderuje poprawnie w pierwszym renderowaniu

Mam ShareActionProvider wraz z kilkoma innymi opcjami w moim ActionBar. Wydaje się jednak, że ShareActionProvider ma problemy z prawidłowym renderowaniem po pierwszym renderowaniu w trybie portretu i nie jest klikalny na pierwszym renderowaniu. Zmiana orientacji powoduje ponowne wyświetlenie ekranu, a następnie wszystkie opcje, które powinny być widoczne, są widoczne, a po obróceniu z powrotem ActionBar ponownie renderuje, ale tym razem jest renderowany również prawidłowo w trybie pionowym.

Załączam obraz, który opisuje sytuację:

Opcja Udostępnij nie jest prawidłowo renderowana, powinna mieć ikonę obok niej, a jeśli nie pasuje do układu, powinna stać się menu z trzema kropkami.

Po orientacji wszystkie opcje są widoczne zgodnie z oczekiwaniami.

Obracanie z powrotem do portretu ponownie renderuje pasek akcji, a teraz menu z trzema kropkami pojawia się tak, jak powinno, i jest klikalne.

Jakieś pomysły na to, co się tutaj dzieje?

To jest mój XML:

    <?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android" >

    <item
        android:id="@+id/item_delete"
        android:icon="@android:drawable/ic_menu_delete"
        android:showAsAction="ifRoom|withText"
        android:title="Delete"
        android:visible="false"/>
    <item
        android:id="@+id/item_edit"
        android:icon="@android:drawable/ic_menu_edit"
        android:showAsAction="ifRoom|withText"
        android:title="Edit"
        android:visible="false"/>
    <item
        android:id="@+id/item_share"
        android:actionProviderClass="android.widget.ShareActionProvider"
        android:showAsAction="ifRoom|withText"
        android:title="Share"
        android:visible="false"/>
    <item
        android:id="@+id/item_save"
        android:icon="@android:drawable/ic_menu_save"
        android:showAsAction="ifRoom|withText"
        android:title="Save"
        android:visible="false"/>
    <item
        android:id="@+id/menu_search"
        android:actionViewClass="android.widget.SearchView"
        android:icon="@android:drawable/ic_menu_search"
        android:showAsAction="ifRoom"
        android:title="@string/menu_search"
        android:visible="false"/>

</menu>

i tak postępuję z menu opcji w Fragmentie:

 /**
 * Hook into the OptionsMenu and add an Edit, Delete and Share option.
 */
@Override
public void onPrepareOptionsMenu(Menu menu) {
    MenuItem deleteItem = menu.findItem(R.id.item_delete);
    deleteItem.setVisible(true);

    MenuItem editItem = menu.findItem(R.id.item_edit);
    editItem.setVisible(true);

    MenuItem shareItem = menu.findItem(R.id.item_share);
    shareItem.setVisible(true);
    shareActionProvider = (ShareActionProvider) shareItem.getActionProvider();
    shareActionProvider.setShareIntent(getShareIntent());

    super.onPrepareOptionsMenu(menu);
}

/**
 * Builds an intent that takes the path for the image and passes it to 
 * the sharing mechanism as a stream built on the URI of the image path.
 * @return the intent to share the image as a stream
 */
private Intent getShareIntent()
{
    Intent shareIntent = new Intent();
    shareIntent.setAction(Intent.ACTION_SEND);
    shareIntent.putExtra(Intent.EXTRA_STREAM, Uri.parse("file://" + receipt.getPhoto()));
    shareIntent.setType("image/jpeg");
    return shareIntent;
}

questionAnswers(4)

yourAnswerToTheQuestion