0
点赞
收藏
分享

微信扫一扫

【2022/01/26】RecyclerView上拉和下拉

RecyclerView上拉和下拉

上拉加载

  1. RecyclerView上添加监听事件
recyclerView.addOnScrollListener(new RecyclerView.OnScrollListener() {
@Override
public void onScrollStateChanged(@NonNull RecyclerView recyclerView, int newState) {
super.onScrollStateChanged(recyclerView, newState);
}
});

  1. 当我们无法上拉以后,以及松开手指以后,触发数据加载
recyclerView.addOnScrollListener(new RecyclerView.OnScrollListener() {
@Override
public void onScrollStateChanged(@NonNull RecyclerView recyclerView, int newState) {
super.onScrollStateChanged(recyclerView, newState);
// canScrollVertically参数是1是无法上拉
if (!recyclerView.canScrollVertically(1) && newState == RecyclerView.SCROLL_STATE_IDLE) {
// 实现数据加载
}
}
});

下拉刷新

  1. 原理跟上拉一样,只是判断无法下拉后,刷新数据
recyclerView.addOnScrollListener(new RecyclerView.OnScrollListener() {
@Override
public void onScrollStateChanged(@NonNull RecyclerView recyclerView, int newState) {
super.onScrollStateChanged(recyclerView, newState);
// canScrollVertically参数是-1是无法上拉
if (!recyclerView.canScrollVertically(-1) && newState == RecyclerView.SCROLL_STATE_IDLE) {
// 实现数据加载
}
}
});

举报

相关推荐

0 条评论