在recyclerview滚动上自动加载下一页的图像

时间:2017-10-22 07:44:36

标签: android networking android-recyclerview

我正在使用pixabay的api在网格布局中的recyclerview中显示图像。 一切正常,我想在用户到达第一页的recyclerview中的图像结束时显示相同活动中的下一页图像,即当用户到达recyclerview的结尾时再发出一个请求并将页面增加1并显示下一页的图像同时我想保留第一页的图像,如果用户再次向上滚动它应该看到第一页的图像。这是我的要求。

https://pixabay.com/api/?q=yellow&key=MY_API_KEY&image_type=photo&page=1

当用户到达recyclerview结束时,如何自动增加页面号。我不想在recyclelerview结束时显示下一页图像的按钮

1 个答案:

答案 0 :(得分:0)

我认为您需要在您的recyclerview中实施addOnSrollListener()。 你应该实现类似的东西:

listRepositories.addOnScrollListener(new 
    RecyclerView.OnScrollListener() {

        @Override
        public void onScrolled(RecyclerView recyclerView, int dx, int dy) {
            super.onScrolled(recyclerView, dx, dy);

            int pastVisibleItems, visibleItemsCount, totalItemCount;

            if (dy > 0) {
                visibleItemsCount = layoutManager.getChildCount();
                pastVisibleItems = layoutManager.findFirstVisibleItemPosition();
                totalItemCount = layoutManager.getItemCount();

                if ((visibleItemsCount + pastVisibleItems) >= totalItemCount) {
                    // method where you get your images
                    load(currentPage++);
                }

            }
        }

    });