onCreateOptionsMenu вызывается после onResume на JB 4.2

У меня есть следующий фрагмент в моем приложении:

public class MyFragment extends SherlockListFragment implements LoaderManager.LoaderCallbacks {
  private MenuItem refresh = null;

  @Override
  public void onActivityCreated(Bundle savedInstanceState) {
    super.onActivityCreated(savedInstanceState);
    setHasOptionsMenu(true);

    //.....

    // NPE here
    refresh.setActionView(R.layout.indeterminate_progress_action);
    getActivity().getSupportLoaderManager().initLoader(0, null, this);
  }

  @Override
  public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
    inflater.inflate(R.menu.refresh_menu, menu);
    refresh = (MenuItem) menu.findItem(R.id.menu_item_refresh);
  }

  @Override
  public void onLoadFinished(Loader loader, Cursor data) {
    mAdapter.swapCursor(data);
    refresh.setActionView(null);
  }
}

В основном, когда пользователь запускает действие, я хочу отобразить индикатор выполнения на панели действий, пока загрузчик не завершит работу. До Android 4.2 все работало нормально. На Android 4.2 я получаю следующую ошибку:

11-24 13:37:14.811: E/AndroidRuntime(17850): Caused by: java.lang.NullPointerException
11-24 13:37:14.811: E/AndroidRuntime(17850):    at com.MyApp.library.fragments.MyFragment.onActivityCreated(TabFragment.java:65)

После добавления некоторой точки останова я понял, что onCreateOptionsMenu вызывается после onActivityCreated. Могу ли я использовать другое событие жизненного цикла? Есть ли лучше было добиться желаемого эффекта?

Ответы на вопрос(1)

Ваш ответ на вопрос