我們做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增添幾分色彩,提高使用者體驗!