```
mRecycle_alarm.setOnScrollListener(new RecyclerView.OnScrollListener() {
@Override
public void onScrollStateChanged(@NonNull RecyclerView recyclerView, int newState) {
super.onScrollStateChanged(recyclerView, newState);
isLoad =true;
int lastPosition = -1;
if(newState == RecyclerView.SCROLL_STATE_IDLE) {
RecyclerView.LayoutManager layoutManager = recyclerView.getLayoutManager();
if(layoutManagerinstanceof GridLayoutManager){
lastPosition = ((GridLayoutManager) layoutManager).findLastVisibleItemPosition();
}else if(layoutManagerinstanceof LinearLayoutManager){
lastPosition = ((LinearLayoutManager) layoutManager).findLastVisibleItemPosition();
}
if(lastPosition >= recyclerView.getLayoutManager().getItemCount() -1){
int bottomMsgId =mAlarmMessageBaselist.get(mAlarmMessageBaselist.size()-1).getRows().get(mAlarmMessageBaselist.get(mAlarmMessageBaselist.size()-1).getRows().size()-1).getMsgId();
if (hasMore){
setData(bottomMsgId);
}else {
isLoad =false;
}
}
}
}
@Override
public void onScrolled(@NonNull RecyclerView recyclerView, int dx, int dy) {
super.onScrolled(recyclerView, dx, dy);
}
});
```
```
```