客观地说,我的目标很简单(或不简单),将回收者的物品拖到我活动中的另一个物品上。
方案如下。
我有一个项目列表,我们称它们为部分,在一个部分内还有另一种类型的项目列表,即元素。
我想在各部分之间交换元素。部分列表不是固定的,可以通过添加和删除部分进行更改,但是没有任何移动行为。元素也可以在节中添加和删除,但是具有这种重新排序的方法。
我发现了一些固定“部分”的策略。 Here是一个示例。这个使用拖放进行交换。但这太简单了。例如,当拖动到达可见元素的底部或顶部时,无需考虑滚动回收的需要。那是因为它只有两个列表。拖放是否具有这种行为,迫使滚动?
使用ItemTouchHelper
有什么方法吗?如果是这样,情况如何? ItemTouchHelper
似乎更好,因为考虑了滚动问题,并且具有更直观的重新排序动画。
[如果您想比使用回收站更好的方法,请随时向我指出这样的策略。
您将拖放用于拖放,滚动等操作,因此必须在OnDragListener中使用适当的事件。