RecyclerView的延迟加载效果

时间:2017-10-06 12:24:54

标签: android android-recyclerview

Android Studio 2.3.3。

我有片段显示列表项。我使用组件 android.support.v7.widget.RecyclerView 来显示列表。好。它工作正常。

现在我需要延迟加载项目(垂直滚动):

  1. 到达列表的顶部
  2. 到达列表的底部
  3. 这里的例子:

    Example of lazy loading

    是否可以通过 RecyclerView 或者我需要使用其他组件或库?

1 个答案:

答案 0 :(得分:0)

非常简单:

recyclerView.addOnScrollListener(new RecyclerView.OnScrollListener() {
        @Override
        public void onScrollStateChanged(RecyclerView recyclerView, int newState) {
            super.onScrollStateChanged(recyclerView, newState);
            if (!recyclerView.canScrollVertically(1) && isMoreDataAvailable && !isLoading) {
                isLoading = true;
                pb_loading.setVisibility(View.VISIBLE);
                PrepareData(ppage,pcount);
            }
        }
    });

isLoading 用于控制用户在加载时不发送许多其他请求, isMoreDataAvailable 用于在没有更多数据时避免更多请求。