一、導入依賴
使用RecyclerView需要依賴相關design的包,在添加studio搜索出來的design包時出現 錯誤:
This support library should not use a different version (25) than the
compileSdkVersion (24)
我項目中的build.gradle
compile 'com.android.support:design:25.0.1'
compileSdkVersion 24所以修改了依賴design包的版本
compile 'com.android.support:design:24.2.0'
二、關于下拉加載數據的判斷
if (!loading && totalItemCount-visibleItemCount <= firstVisibleItem){
currentPage ++;
onLoadMore(currentPage);
loading = true
}
其中關于下拉要加載更多的時候有上面的一個判斷條件
- //在屏幕上可見的item數量 visibleItemCount
- //在屏幕可見的Item中的第一個
firstVisibleItem - //已經加載出來的Item的數量
totalItemCount
假如一共有20個item一下子加載出來,屏幕一共可見12個,這時剛加載出來第一個肯定是0
- firstVisibleItem 是 0 (從0開始計數)
- visibleItemCount 是 12
- totalItemCount 是 20
當上拉向下滑動時,firstVisibleItem 隨著上拉第一個可見item就會改變,但是 visibleItemCount 不改變。
- 當firstVisibleItem = 8的時候,最后一個item肯定是item 19
- 此時firstVisibleItem + visibleItemCount = totalItemCount到達臨界點開始加載新的數據