1. 到底部自動(dòng)加載更多
//加載更多
mRecyclerView.setOnScrollListener(new OnScrollListener() {
@Override
public void onScrolled(RecyclerView recyclerView, int dx, int dy) {
lastVisibleItemPos=mRecyclerView.getLastVisibleItemPosition();
super.onScrolled(recyclerView, dx, dy);
}
@Override
public void onScrollStateChanged(RecyclerView recyclerView, int newState) {
//每次加載10條數(shù)據(jù)橄务,lastVisibleItemPos為當(dāng)前總數(shù)-1
if(newState==RecyclerView.SCROLL_STATE_IDLE&&lastVisibleItemPos==adapter.getItemCount()-1){
new Handler().postDelayed(new Runnable(){
@Override
public void run() {
int size=lists.size();
newLists=dbHelper.getLimitList(lists,size);
lists.addAll(newLists);
//改變adapter中l(wèi)ist,刷新數(shù)據(jù)
adapter.setList(lists);
adapter.notifyDataSetChanged();
}
},1000);
}
super.onScrollStateChanged(recyclerView, newState);
}
});
數(shù)據(jù)庫(kù)用的GreenDAO,offset是已取出的list數(shù)
![Uploading 從數(shù)據(jù)庫(kù)中取10條_958131.png . . .]
Adapter類:
public void setList(ArrayList<Entity> lists){
this.lists=lists;
}