RecyclerView 下拉刷新一般都是通過SwipeRefreshLayout組件來實(shí)現(xiàn),在關(guān)于加載更多,則需要我們自己動(dòng)手實(shí)現(xiàn),recyclerview.addOnScrollListener(new OnScrollListener(){...})中的回調(diào)方法。

onScrollStateChanged,這個(gè)方法主要是用于檢測recyclerview的滑動(dòng)狀態(tài),一般來說有三種狀態(tài):

后面的例子會(huì)介紹具體怎么判斷狀態(tài)。
而onScrolled主要用于檢測滑動(dòng)過程,諸如向上,向下滑動(dòng)都觸發(fā)該方法。
RecyclerView 加載更多的核心在于如何判斷Recyclerview是否到達(dá)了底部。
一般來說有兩種方法判斷。
第一種:

通過這種計(jì)算方式,得到已經(jīng)滑動(dòng)到了底部。這種方式比較呆,當(dāng)item占屏非常大的時(shí)候,會(huì)出現(xiàn)失誤。
第二種:
通過繼承OnScrollLisener,重寫兩種回調(diào)方法即可。

這里的recyclerview.canScrollVertically(1),是用于判斷是否可以繼續(xù)下滑,參數(shù)為-1是判斷是否可以繼續(xù)上滑。需要加載更多是,我們重寫srollBottom(),方法即可:

這樣就基本完成了加載更多了。