swiperefreshlayout是V4包下控件 安卓自帶,不需要導入任何依賴
private void initPullRefresh() {
/**
* 下拉重新整理回調方法
*/
srl.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() {
@Override
public void onRefresh() {
//前面添加資料 用集合傳過去
Toast.makeText(MainActivity.this,"重新整理",Toast.LENGTH_SHORT).show();
if(data!=null&&data.size()!=0){
data.clear();
}
initData(page);//請求首頁資料
ada.notifyDataSetChanged();
srl.setRefreshing(false);//關閉
}
});
}
private void initLoadMoreListener() {
//對Recyclerview 的一個滑動監聽
rv.setOnScrollListener(new RecyclerView.OnScrollListener() {
int lastVisibleItem ;
@Override
public void onScrollStateChanged(RecyclerView recyclerView, int newState) {
super.onScrollStateChanged(recyclerView, newState);
//判斷RecyclerView的狀态 是空閑時,同時,是最後一個可見的ITEM時才加載
if(newState==RecyclerView.SCROLL_STATE_IDLE&&lastVisibleItem+1==ada.getItemCount()){
Toast.makeText(MainActivity.this,"加載",Toast.LENGTH_SHORT).show();
initData(page++);//請求首頁資料
ada.notifyDataSetChanged();
}
}
@Override
public void onScrolled(RecyclerView recyclerView, int dx, int dy) {
super.onScrolled(recyclerView, dx, dy);
LinearLayoutManager layoutManager = (LinearLayoutManager) recyclerView.getLayoutManager();
//最後一個可見的ITEM
lastVisibleItem=layoutManager.findLastVisibleItemPosition();
}
});
}