如何将项目拖到回收视图中的文件夹中?

Jay*_*333 5 animation android drag-and-drop android-recyclerview

我正在使用回收视图来填充我的所有列表项和一些文件夹。我想通过拖放到文件夹中来移动这些项目。

到目前为止我做了什么

我已经使用ItemTouchHelper From this成功实现了重新排列我的项目。

现在我不想只更改我的项目位置,但如果我将项目拖到我的文件夹上,我想从列表中删除该项目并将其存储到该文件夹​​中。

ItemTouchHelper.Callback _ithCallback = new ItemTouchHelper.Callback() {

        public boolean onMove(RecyclerView recyclerView, RecyclerView.ViewHolder viewHolder, RecyclerView.ViewHolder target) {

            Collections.swap(list,viewHolder.getAdapterPosition(), target.getAdapterPosition());


            System.out.println("my first position  "+viewHolder.getAdapterPosition());
            System.out.println("my finish position  "+target.getAdapterPosition());

            adapter.notifyItemMoved(viewHolder.getAdapterPosition(), target.getAdapterPosition());
            return true;
        }
Run Code Online (Sandbox Code Playgroud)

我也搜索过 Android Arsenal 但找不到任何 lib 。

我不知道如何使用ItemTouchHelper将我的项目放在另一个项目上(在我的例子中是文件夹)。

当我将项目放在背景项目上时,有什么方法可以获取背景项目的 X,Y 坐标吗?

是否可以使用ItemTouchHelperDragListner

有没有更好的方法可以将回收视图中的项目移动到另一个项目上?