Android_开源控件_DragSortListview

DragSortListview是一个强大的自定义ListView,支持拖拽排序和左右滑动删除。通过实现相关接口和监听器,可以自定义拖动效果和数据排序。该控件提供了平滑的滚动效果、拖动开始/停止方法,以及DragSortController辅助类,简化了拖动排序的实现。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

DragSortListview

前几天公司要做一个拖动排序的效果,找到了这款开源控件。十分强大~
Github链接:https://github.com/bauerca/drag-sort-listview

简要

DragSortListview是一个支持拖拽排序和左右滑动删除功能的自定义ListView,重写了TouchInterceptor(TI)类来提供更加优美的拖拽动画效果,被评为当前拖动排序的最完美的解决方案:
1. 完美的拖拽效果
2. 在拖动时提供更平滑的列表滚动效果
3. 提供start/stopDrag()方法
4. 公开接口,可以自定义拖动的View

如何使用

有三个主要的元素来定义拖拽的操作
1. 数据重排:拖拽排序重排ListView底层的数据顺序,由于DSLV不知道您是如何组织您的数据的,所以重新组织数据必须由您自己通过实现相关的接口来实现。
2. 开始/停止拖动:通过调用DSLV的 startDrag() 和 stopDrag() 函数来启动或者停止拖动操作。 DragSortController这个助手类,提供了所有常用的 开始/停止/删除 拖拽操作功能。
3. Floating View(拖动的View):通过实现 FloatViewManager 接口可以控制 拖动的View 的视觉效果和行为。这样您可以显示任何内容作为 拖动的View,并且可以在拖动过程中更新其位置和显示状态。 DragSortController 助手类已经实现了该接口并提供了一些易用的实现方式。
[注意]
第一条是必须自己实现的,第二条和第三条可以使用DSC助手类实现

XML属性

名称 意义
collapsed_height (dimension, 1px) 拖动其实位置占位符的高度。不能为0
drag_scroll_start (float, 0.3) 拖动时开始滚动ListView的区域(为DSLV 高度的分数值,在0到1之前࿰
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值