アクティビティにアクションバー (actionbarsherlock) があります。ある時点で、いくつかのボタンを備えたアクションモードが表示されます。
actionprovider を使用して、actionmode のボタンの 1 つにメニューを提供することはできますか?
私は簡単なものを試しました:
@Override
public boolean onCreateActionMode(ActionMode mode, Menu menu) {
MenuItem mistyle = menu.add(Menu.NONE, -1, Menu.NONE, "Style").setIcon(R.drawable.ic_menu_settings_holo_light);
mistyle.setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM | MenuItem.SHOW_AS_ACTION_WITH_TEXT);
mistyle.setActionProvider(new StyleActionProvider(context));
ただし、ActionProvider の onPrepareSubMenu と hasSubMenu は呼び出されません。(ActionProvider の onCreateActionView で null を返します)
actionmode の代わりにアクションバーで actionprovider を使用すると、これは問題なく動作します。そのため、これがサポートされているかどうか疑問に思っていました。
サポートされていない場合、ユーザーがアクションモードバーのボタンを押したときにメニューを表示することは別の方法で可能ですか?