日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

实战ItemTouchHelper仿网易新闻客户端自定义栏目页面

發布時間:2023/12/16 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 实战ItemTouchHelper仿网易新闻客户端自定义栏目页面 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

轉載請標明出處:
http://blog.csdn.net/zeeeeeeee/article/details/51458643

前天看了鴻洋大神推送的文章,發現了ItemTouchHelper這個東東~

真的是相見恨晚啊~

重拾起荒廢已久的博客。。。。
其實自己有記筆記的習慣,慢慢整理下,跟大家分享!

之前做的項目就有類似的效果,搞得那是一把辛酸一把淚~

晚上忍不住,擼了一下,爽歪歪
來張效果圖

基于RecyClerView + ItemTouchHelper實現,相當簡單,關于ItemTouchHelper可以去網上搜索,或者去看下hongyang大神推送的那篇博客。

這里我就不再闡述了,為了方便使用,我對拖拽的一些操作進行了小小的封裝。只需兩步就可以輕松實現拖拽效果啦~

使用步驟

一、實現接口

為recyclerView的Adapter實現DragItemData接口,并實現其中的notifyItemRemoved和getDatas()方法

public interface DragItemData{public List getDatas();public void notifyItemRemoved(int position); }

二、初始化DragItemHelper

DragItemHelper mDragItemHelper = new DragItemHelper(mListRecyView,myListAdapter);

mListRecyView:目標RecyClearView
myListAdapter:實現DragItemData接口的Adapter

這樣就可以實現簡單的拖動效果啦,為了方便使用,對一些常用操作也封裝了幾個方法

/*** 禁止拖動的Position* @param positions*/public void addInvalidPos(Integer...positions){mDragItemCallback.addinvalidPositons(positions);} /**** @param islongPress* true : 全部無法拖動* fals : 清空所有不可拖動項*/public void isLongPressDragEnabled(boolean islongPress){ /*** 拖動開始和結束的回調* @param dragStateCallback*/public void setDragStateCallback(DragItemCallback.DragStateCallback dragStateCallback){mDragItemCallback.setmDragStateCallback(dragStateCallback);}

源碼下載地址

總結

以上是生活随笔為你收集整理的实战ItemTouchHelper仿网易新闻客户端自定义栏目页面的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。