小编Xya*_*ren的帖子

如何在support.v7.widget.Toolbar和Listview中使用Contextual Actionbar(CAB)?

我正在尝试使用带有ListView的CAB:

listView.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE_MODAL);

listView.setMultiChoiceModeListener(new ListView.MultiChoiceModeListener() {
        @Override
        public void onItemCheckedStateChanged(ActionMode mode, int position, long id, boolean checked) {

            mode.setTitle(getString(R.string.list_selector_num_items_selected, listView.getCheckedItemCount()));
            Log.i("LIST",position + " selected");
        }

        @Override
        public boolean onCreateActionMode(ActionMode mode, Menu menu) {
            return true;
        }
... and so on
Run Code Online (Sandbox Code Playgroud)

这将创建具有默认ActionBar的CAB,该ActionBar与我在AppTheme中的此条目一起覆盖工具栏:

<item name="windowActionModeOverlay">true</item>
Run Code Online (Sandbox Code Playgroud)

这是工作但它看起来不是很好.

如果您长按电子邮件,我想要实现的目标与当前的Gmail应用程序类似.

任何想法如何实现这一目标?


我正在使用SupportActionBar:

Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
if (toolbar != null) {
    setSupportActionBar(toolbar);
}
Run Code Online (Sandbox Code Playgroud)

android android-appcompat android-support-library contextual-action-bar android-actionbar-compat

6
推荐指数
1
解决办法
2516
查看次数