从上下文操作栏中删除标题

Sea*_*ach 2 android contextual-action-bar android-actionmode

我想删除在上下文操作栏中为标题分配的视图.

这就是我要删除的内容

请注意,我不想设置标题; 我希望View完全消失.这是为了允许更多空间,以便可以在菜单栏上显示操作,而不是将其拖放到溢出菜单中.

另请注意,我不想设置android:showAsAction="always".我想让Android决定图标的空间大小.我只是希望通过删除为标题保留的空白区域来获得更多空间.

UPDATE

我尝试过的事情:

  • ActionMode.setCustomView(null)
  • ActionMode.setTitleOptionalHint(true)
  • ActionMode.setTitle("").

不幸的是,这些都没有奏效.


更新2

事实证明,我想要的结果是不可能实现的.删除标题将不允许有更多图标; Android根据设备屏幕大小设置硬限制.如果您想在菜单中添加更多图标,请参阅@adneal提供的答案.

如果您确实拥有一个标题(如下所示)并希望将其删除,那么您可以ActionMode.setTitle("")按照@CommonsWare在接受的答案中提供的方式进行呼叫.

带标题的菜单示例

adn*_*eal 5

另请注意,我不想设置android:showAsAction ="always"

如果你想要两个以上的动作按钮ActionBar,至少在较小的屏幕上,你必须这样做.所述ActionBarPolicy确定多少动作按钮,在放置ActionBar默认量为2.

覆盖该默认值的唯一方法是使MenuItem"始终"出现.

    @Override
    public boolean onCreateActionMode(ActionMode mode, Menu menu) {
        mode.setTitle(null);

        for (int i = 0; i < 5; i++) {
            menu.add("Item " + (i + 1)).setIcon(android.R.drawable.sym_def_app_icon)
                    .setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS);
        }
        return true;
    }
Run Code Online (Sandbox Code Playgroud)

结果