RecyclerView ItemTouchHelper操作拖动结束

当他停止拖放我的RecyclerView(当他放弃select的项目时),我需要听用户。

我可以通过我的ItemTouchHelper获取这些信息吗?

感谢您的帮助

马克:目前我只有现在当用户仍然移动项目:)

@Override public boolean onMove(RecyclerView recyclerView, RecyclerView.ViewHolder source, RecyclerView.ViewHolder target) { if (source.getItemViewType() != target.getItemViewType()) { return false; } // Notify the adapter of the move mAdapter.onItemMove(source.getAdapterPosition(), target.getAdapterPosition()); return true; } 

Solutions Collecting From Web of "RecyclerView ItemTouchHelper操作拖动结束"

更新

首先,你可以通过实现canDropOver来定义一个对象的canDropOver

 @Override public boolean canDropOver(RecyclerView recyclerView, RecyclerView.ViewHolder current, RecyclerView.ViewHolder target) { return current.getItemViewType() == getItemViewType(); } 

更新您要使用的适配器,在拖动操作过程中可以调用多个

 @Override public boolean onMove(RecyclerView recyclerView, RecyclerView.ViewHolder viewHolder, RecyclerView.ViewHolder target) { adapter.moveItem(viewHolder.getAdapterPosition(), target.getAdapterPosition()); return true; } 

为了检测什么时候与一个元素的交互实现clearView这是为了任何动作types(拖动或滑动),即使它成功(项目移动或刷卡)或取消(项目不移动或刷卡)

 @Override public void clearView(RecyclerView recyclerView, RecyclerView.ViewHolder viewHolder) { super.clearView(recyclerView, viewHolder); // Action finished }