Android 长时间单击项目后的Recyclerview拖动操作

Android 长时间单击项目后的Recyclerview拖动操作,android,drag-and-drop,android-recyclerview,Android,Drag And Drop,Android Recyclerview,我试图在用户长时间按下Recyclerview项并向下或向上滑动后执行拖动操作。在长按时,我已经开始动作模式,所以在长按后用户向下/向上滑动后,只需开始拖动。我尝试在Recyclerview上实现onTouch侦听器,但它没有收到ACTION\u DOWN事件。当手指松开时,它只接收动作_MOVE和动作_UP。在手势侦听器中,我开始拖动。但在这种情况下,如何捕获向下或向下/向上滑动的动作 我不想移动ItemTouchHelper或拖动排序列表视图之类的项目 recyclerAdapter.se

我试图在用户长时间按下Recyclerview项并向下或向上滑动后执行拖动操作。在长按时,我已经开始动作模式,所以在长按后用户向下/向上滑动后,只需开始拖动。我尝试在Recyclerview上实现onTouch侦听器,但它没有收到ACTION\u DOWN事件。当手指松开时,它只接收动作_MOVE和动作_UP。在手势侦听器中,我开始拖动。但在这种情况下,如何捕获向下或向下/向上滑动的动作

我不想移动ItemTouchHelper或拖动排序列表视图之类的项目

 recyclerAdapter.setOnItemLongClickListener(new Recycler.OnItemLongClickListener() {
        @Override
        public void onItemLongClick(View view, int position) {
                getActivity().startActionMode(this);
                mStartDrag = true;
   }});

recyclerViewList.setOnTouchListener(new View.OnTouchListener() {
        @Override
        public boolean onTouch(View view, MotionEvent motionEvent) {
            Logger.log("TAG", "On item touch"+ motionEvent.getActionMasked()); // Returns 2 (ACTION_MOVE)

            if (mStartDrag) {

                if (gestureDetector.onTouchEvent(motionEvent)) {
                    return false;
                }
            }
            return false;
        }
    });

看看这是否有帮助-回顾:可以使用一些解释以及纯代码解决方案。
viewHolder.drag.setOnLongClickListener(new View.OnLongClickListener() {
        @Override
        public boolean onLongClick(View v) {
            mStartDragListener.onStartDrag(viewHolder);
            return false;
        }
    });