我正在尝试在我的程序中使用https://github.com/nhaarman/ListViewAnimations库。具体来说,Drag-n-Drop支持。
虽然我设法将应用程序调整为DynamicListView(由于作者提供了很棒的lib,这并不困难),我似乎无法理解如何将更改应用于数据背后的持久存储列表 - 例如,sqlite数据库数据。
不应该在DynamicListView或ArrayAdapter中有回调通知应用有关Drag-n-Drop的结束吗?
答案 0 :(得分:2)
回调会很好,但它似乎没有内置到库中。
查看源代码,您可以看到交换发生在swapElements()
的DynamicListView.java
函数中。您可以看到它检查提供给列表的适配器是否实现了Swappable
接口,如果是,则调用其swapItems()
函数。
因此,您只需要在适配器中实现该接口,然后将其提供给DynamicListView。
答案 1 :(得分:2)
实现DynamicListView.OnItemMovedListener并覆盖onItemMoved()。使用DynamicListView.setOnItemMovedListener()
将其设置为回调