国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 系統(tǒng) > Android > 正文

Android RecyclerView添加上拉加載更多功能

2019-12-12 05:05:28
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

上一篇文章已經(jīng)介紹了如何為RecyclerView添加FootView,在此基礎(chǔ)上,要添加分頁(yè)加載的功能其實(shí)已經(jīng)很簡(jiǎn)單了。
上一篇文章地址:為RecyclerView添加FootView和HeadView

效果:(源碼在文章結(jié)尾)

實(shí)現(xiàn)關(guān)鍵

在上一篇代碼的基礎(chǔ)上,只需要在onBindViewHolder(ViewHolder holder, int position)函數(shù)中添加一定修改就可以了,如下:

@Override public void onBindViewHolder(ViewHolder holder, int position) {  //建立起ViewHolder中試圖與數(shù)據(jù)的關(guān)聯(lián)  Log.d("xjj", getItemViewType(position) + "");  //如果footview存在,并且當(dāng)前位置ViewType是FOOT_TYPE  if (isFootView && (getItemViewType(position) == FOOT_TYPE)) {   holder.tvFootView.setText(footViewText);   // 刷新太快 所以使用Hanlder延遲兩秒   Handler handler = new Handler();   handler.postDelayed(new Runnable() {    @Override    public void run() {     max_count += 5;     notifyDataSetChanged();    }   }, 2000);  } else {   holder.tvViewHolder.setText(mData.get(position) + position);  } }

在函數(shù)中,首先讓該item顯示“加載中。。。”,然后使用Handler,延遲兩秒刷新,邏輯內(nèi)容主要有兩個(gè),一個(gè)是顯示的最大容量增加5,二是刷新Adapter的內(nèi)容。

拓展延伸

筆者此處為了讓讀者容易理解,很多地方的使用比較粗糙,讀者真正使用的時(shí)候定然不會(huì)如此簡(jiǎn)單,在此列出幾點(diǎn),以供讀者自己學(xué)習(xí):
1、FootView中一般不會(huì)僅僅是一個(gè)TextView,對(duì)UI有一定追求的讀者至少需要添加一個(gè)ProgressBar。
2、Adapter的內(nèi)容一般不會(huì)直接用List傳入,需要從網(wǎng)絡(luò)獲取之類(lèi),因此刷新Adapter的內(nèi)容一般就需要用到線(xiàn)程,而不是此處簡(jiǎn)單的一個(gè)Handler就可以了。

源碼地址:http://xiazai.VeVB.COm/201610/yuanma/PullRecyclerView(VeVB.COm).rar

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持武林網(wǎng)。

發(fā)表評(píng)論 共有條評(píng)論
用戶(hù)名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 泸西县| 抚顺市| 宁安市| 大英县| 松桃| 综艺| 清水河县| 高唐县| 昆山市| 德钦县| 湘阴县| 凭祥市| 昌都县| 禹城市| 左权县| 通榆县| 海丰县| 广宁县| 商丘市| 吉林市| 桓仁| 嘉祥县| 隆尧县| 封丘县| 米脂县| 河曲县| 潞西市| 乡宁县| 红安县| 长岛县| 达州市| 襄汾县| 河东区| 郁南县| 灌南县| 阳泉市| 恩平市| 南部县| 繁峙县| 鸡东县| 黄龙县|