我们做listview左右滑动操作时,一般中情况下,都是像qq那样,左滑弹出操作菜单(删除、编辑),然后选择菜单操作; 这样的效果不可谓不好,算是非常经典。 另外,有少数的app,尤其是任务管理类的app,更加注重listview的操作交互,例如todolist及滴答清单,这两个app对任务的操作是直接通过滑动列表进行操作的;效果图如下:

1. 使用android studio新建项目导入该开源库:
导入该库,可以在build.gradle中添加:
当然,我更建议直接把该项目的library直接导入到项目中,这样会更加方便对代码进行修改。
2. 首先,设置listview显示:
上面的代码很简单,只是比正常使用listview多了一步:swipeactionadapter madapter = new swipeactionadapter(stringadapter); 就是在普通adapter的基础上包裹上一层swipeactionadapter。
3. 为listview的item添加滑动时的背景色
上述代码最后,既是添加背景的代码,代码很明了,在为不同的滑动过程,添加不同的背景,该背景其实就是一个布局,例如row_bg_left_far.xml文件:
此处,可以查看下swipedirection.java类源码:
我们可以看出,主要的操作有四个: direction_normal_left(左滑一小段距离),direction_far_left(左滑较长距离), direction_normal_right(右滑一小段距离),direction_far_right(右滑较长距离)。
4. 添加listview左右滑动监听:
· public boolean hasactions(int position, swipedirection direction) : 该方法主要判断滑动方向:左滑还是右滑。
· public boolean shoulddismiss(int position, swipedirection direction):该方法主要判断list item滑动后是否有消失的动画。
· public void onswipe(int[] positionlist, swipedirection[] directionlist): 主要在该方法中处理滑动逻辑。
以上,就是swipeactionadapter的基本使用方式,相信善用该库,一定会给app增添几分色彩,提高用户体验!