天天看点

Google 相册风格的RecyclerView多选效果: drag-select-recyclerview Gradle依赖  介绍  DragSelectRecyclerView  DragSelectRecyclerViewAdapter  用户激活 

google 相册风格的recyclerview多选效果,手指滑动所到之处都被选中。不过与谷歌相册的差距是一次只能选择一屏的item。

Google 相册风格的RecyclerView多选效果: drag-select-recyclerview Gradle依赖  介绍  DragSelectRecyclerView  DragSelectRecyclerViewAdapter  用户激活 

 build.gradle 文件: 

本库主要的两个类是dragselectrecyclerview和dragselectrecyclerviewadapter。两个一起工作为你提供需要的功能。 

dragselectrecyclerview取代你通常在布局中使用的recyclerview。它拦截触摸事件判断选择模式是否处于激活状态,然后自动向你的adapter报告。 

设置基本上和普通recyclerview一样。你必须为他设置一个layoutmanager与recyclerview.adapter: 

这里最主要的区别就是 setadapter()里面放入的东西,它不能是普通的recyclerview.adapter,必须是dragselectrecyclerviewadapter的子类。下面将会讨论。 

dragselectrecyclerviewadapter是一个dragselectrecyclerview可以与之交互的recyclerview.adapter 的子类。它跟踪被选中的索引-让你可以改变它们,清除它们,监听它们的变化以及检查某个索引是否被选中。 

最基本的adapter实现如下: 

you choose what to do when an item is selected (in onbindviewholder). isindexselected(int)returns true or false. the click listener implementation used here will aid in the next section. 

你自己选择在一个item被选择(在onbindviewholder中)的时候做什么。 

除非你告诉library,否则它不会启用选择模式。用户要能够自己激活它,上面adapter中click listener的实现可以帮助你做到这点。 

dragselectrecyclerviewadapter包含了许多可以帮助你的方法! 

项目主页:http://www.open-open.com/lib/view/home/1446619651232

继续阅读