繁体   English   中英

如何从上下文操作模式处理recyclerView项目的单击侦听器?

[英]How handle click listener for recyclerView item from contextual action mode?

在此处输入图片说明

我想让recyclerview项目像这张图片一样单击。当我选择recyclerview项目时,长按鼠标右键,然后启用上下文操作模式。如果我只选择一个项目,则不显示编辑菜单项目。当我单击编辑菜单项目然后单击在recyclerView上选择项目并做一些工作。但我做不到。请帮我一个。我是android开发中的新手。 高级谢谢。

我为您获取了一些信息,可能会对您有所帮助,

一旦实现setSelectable(),就可以使用常规的ActionMode.Callback来实现CHOICE_MODE_MULTIPLE_MODAL的其余部分。 从相关的回调方法中调用您的setSelectable():

private ActionMode.Callback mDeleteMode = new ActionMode.Callback() {
        @Override
        public boolean onPrepareActionMode(ActionMode actionMode, Menu menu) {
            setSelectable(true);
            return false;
        }

        @Override
        public void onDestroyActionMode(ActionMode actionMode) {
            setSelectable(false);
        }

        @Override
        public boolean onCreateActionMode(ActionMode actionMode, Menu menu) { ... }

        @Override
        public boolean onActionItemClicked(ActionMode actionMode, MenuItem menuItem) { ... }
    }

然后使用长按侦听器打开操作模式:

private class CrimeHolder extends SwappingHolder
            implements View.OnClickListener, View.OnLongClickListener {

        ...

        public CrimeHolder(View itemView) {
            ...

            itemView.setOnClickListener(this);
            itemView.setOnLongClickListener(this);
            itemView.setLongClickable(true);
        }

        @Override
        public boolean onLongClick(View v) {
            ActionBarActivity activity = (ActionBarActivity)getActivity();
            activity.startSupportActionMode(mDeleteMode );
            setSelected(this, true);
            return true;
        }
    }

让我知道您是否对此片段有任何想法。 如果您想要更多,请访问此链接 ,这是Bill Phillips的精彩文章。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM