RecyclerView已經(jīng)寫過兩篇文章了,分別是Android 5.X新特性之RecyclerView基本解析及無限復(fù)用 和 Android 5.X新特性之為RecyclerView添加HeaderView和FooterView,既然來到這里還沒學(xué)習(xí)的,先去學(xué)習(xí)下吧。
今天我們的主題是學(xué)習(xí)為RecyclerView添加下拉刷新和上拉加載功能。
首先,我們先來學(xué)習(xí)下拉刷新,google公司已經(jīng)為我們提供的一個(gè)很好的包裝類,那就是SwipeRefreshLayout,這個(gè)類可以支持我們向下滑動(dòng)并進(jìn)行監(jiān)聽。那么我們先了解一些基本知識(shí),然后再從源碼的角度來解析它。
A. SwipeRefreshLayout 是一個(gè)容器,直接繼承于ViewGroup。
從其源碼中我們可以直接看出,它是直接繼承于ViewGroup的,所以它是一個(gè)容器,既然是一個(gè)容器,那么我們就可以向其中添加View。
B. SwipeRefreshLayout 封裝了一些列的方法供我們使用,其中較常用的包括以下幾個(gè)。
1. setColorSchemeResources: 刷新時(shí)動(dòng)畫的顏色,可以設(shè)置4個(gè)2. setProgressBackgroundColorSchemeResource: 設(shè)置刷新時(shí)進(jìn)度圓環(huán)的背景顏色3. setOnRefreshListener(SwipeRefreshLayout.OnRefreshListener listener): 設(shè)置手勢(shì)滑動(dòng)監(jiān)聽器。4. setRefreshing(Boolean refreshing): 設(shè)置組件的刷洗狀態(tài)。5. setSize(int size):設(shè)置進(jìn)