两个时间响应不同的菜单项



我有两个不同的菜单项(翻转和共享)共享一个活动。每一个都能完美流畅地工作,但当我把它们放在一起时,翻转动作花了太长时间才做出反应。我能做什么?谢谢你的帮助。

翻转动作:

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    super.onCreateOptionsMenu(menu);
    // Add either a "photo" or "finish" button to the action bar, depending on which page
    // is currently selected.
   MenuItem item = menu.add(Menu.NONE, R.id.action_flip, Menu.NONE,
           mShowingBack
                   ? R.string.action_photo
                   : R.string.action_info);
   item.setIcon(mShowingBack
           ? R.drawable.ic_action_photo
         : R.drawable.ic_action_info);
   item.setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM);
    return true;
}

分享行动

public boolean onPrepareOptionsMenu(Menu menu) {
    getMenuInflater().inflate(R.menu.share_menu, menu);
    MenuItem item = menu.findItem(R.id.menu_item_share);
    mShareActionProvider = (ShareActionProvider) item.getActionProvider();
    mShareActionProvider.setShareIntent(getDefaultShareIntent());
    return super.onPrepareOptionsMenu(menu);
}

我把这个问题留了下来,我忘了。然而,我又看了一眼,想起了我是怎么解决的。我做错了。我必须在所有内容之前调用super.onPrepareOptionsMenu(menu),像这样:

@Override
public boolean onPrepareOptionsMenu(Menu menu) {
    super.onPrepareOptionsMenu(menu);
    getMenuInflater().inflate(R.menu.share_menu, menu);
    MenuItem item = menu.findItem(R.id.menu_item_share);
    mShareActionProvider = (ShareActionProvider) item.getActionProvider();
    mShareActionProvider.setShareIntent(getDefaultShareIntent());
    return true;
}

最新更新