OGeek|极客世界-中国程序员成长平台

标题: android - 如何用 RecyclerView 实现无限列表? [打印本页]

作者: 菜鸟教程小白    时间: 2022-8-1 01:19
标题: android - 如何用 RecyclerView 实现无限列表?

我想更改ListView RecyclerView .我想使用 onScroll OnScrollListener RecyclerView确定用户是否滚动到列表的末尾。

我如何知道用户是否滚动到列表末尾以便我可以从 REST 服务获取新数据?



Best Answer-推荐答案


感谢@Kushal,这就是我实现它的方式

private boolean loading = true;
int pastVisiblesItems, visibleItemCount, totalItemCount;

mRecyclerView.addOnScrollListener(new RecyclerView.OnScrollListener() {
    @Override
    public void onScrolled(RecyclerView recyclerView, int dx, int dy) {
        if (dy > 0) { //check for scroll down
            visibleItemCount = mLayoutManager.getChildCount();
            totalItemCount = mLayoutManager.getItemCount();
            pastVisiblesItems = mLayoutManager.findFirstVisibleItemPosition();

            if (loading) {
                if ((visibleItemCount + pastVisiblesItems) >= totalItemCount) {
                    loading = false;
                    Log.v("...", "Last Item Wow !");
                    // Do pagination.. i.e. fetch new data

                    loading = true;
                }
            }
        }
    }
});
不要忘记添加
LinearLayoutManager mLayoutManager;
mLayoutManager = new LinearLayoutManager(this);
mRecyclerView.setLayoutManager(mLayoutManager);

关于android - 如何用 RecyclerView 实现无限列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26543131/






欢迎光临 OGeek|极客世界-中国程序员成长平台 (http://jike.in/) Powered by Discuz! X3.4