【开源】DynamicRecyclerView
DynamicRecyclerView
- https://github.com/ismoli/DynamicRecyclerView
介绍:
一个轻量级的,非侵入式的方式实现RecyclerView拖拽排序,滑动删除的库,非侵入式的意思是指它没有使用自定义的RecyclerView或者是LayoutManager,所以适用范围更广。该库的意义不在于其实现了拖拽排序和滑动删除,而在于其实现方式。运行效果:
![]()
使用说明:
拖拽
|
1
2
3
4
5
6
7
8
9
10
11
12
13
|
dragDropTouchListener = new DragDropTouchListener(recyclerView, this) { @Override protected void onItemSwitch(RecyclerView recyclerView, int from, int to) { adapter.swapPositions(from, to); adapter.notifyItemChanged(to); adapter.notifyItemChanged(from); @Override protected void onItemDrop(RecyclerView recyclerView, int position) { } }; } recyclerView.addOnItemTouchListener(dragDropTouchListener); |
滑动删除
|
1
2
3
4
5
6
7
8
9
10
|
swipeToDismissTouchListener = new SwipeToDismissTouchListener(recyclerView, new SwipeToDismissTouchListener.DismissCallbacks() { @Override public SwipeToDismissTouchListener.SwipeDirection canDismiss(int position) { return SwipeToDismissTouchListener.SwipeDirection.RIGHT; } @Override public void onDismiss(RecyclerView view, List<SwipeToDismissTouchListener.PendingDismissData> dismissData) { for (SwipeToDismissTouchListener.PendingDismissData data : dismissData) { adapter.removeItem(data.position); adapter.notifyItemRemoved(data.position); } } }); recyclerView.addOnItemTouchListener(swipeToDismissTouchListener); |
posted on 2015-04-10 09:18 wasdchenhao 阅读(208) 评论(0) 收藏 举报

浙公网安备 33010602011771号