我使用 itemTouchHelper.callback 在 recyclerView 中实施了商品重新排序,因为它现在似乎是最受欢迎的解决方案。然而,这只允许在长按任何项目后重新排序,我需要能够随时自由移动项目(我将项目 itemTouchHelper 附加到'编辑模式'并立即分离。 实现这一目标的最简单方法是什么?
答案 0 :(得分:3)
首先在itemTouchHelper中禁用LongPressDragEnabled,然后只需触摸自定义句柄视图(即Imageview或类似内容)即可调用startDrag(RecyclerView.ViewHolder)
viewHolder.dragButton.setOnTouchListener(new View.OnTouchListener() {
public boolean onTouch(View v, MotionEvent event) {
if (MotionEvent.getActionMasked(event) == MotionEvent.ACTION_DOWN) {
mItemTouchHelper.startDrag(viewHolder);
}
return false;
}
});