如何获取RecyclerView中片段中的最后一个可见项目

时间:2020-05-06 15:23:37

标签: android android-fragments kotlin android-recyclerview

我正在构建一个片段页面,里面有一个RecyclerView.RecyclerView从Internet来源获取日期(通过使用Retrofit)。当用户滚动到Recycler的末尾时,我试图调用新数据(其他换句话说,在创建片段时会调用某些数据,如果用户不慎将其调用,则会调用新数据)。 这是我用于此目的的代码

      rvCategorie.viewTreeObserver.addOnScrollChangedListener {
            when {
layoutManager.findLastCompletelyVisibleItemPosition() == adapterCategorie.listSize() - 1 && (nextpageLink.toString().isNullOrEmpty() or !nextpageLink.toString().equals("null")) -> {
                    Caller.getcall(++categoriesCurrentPage)
                }
            }
        }

问题是,使用此代码时,“ layoutManager.findLastCompletelyVisibleItemPosition()”方法始终会返回最后一个项目并调用新数据。即使该项目不可见,而且我也不会在仍然调用的页面上使用新数据

请注意:getcall()方法是调用数据并返回数据的方法(有 没问题)。调用完成后,nextpageLink也会自动更新(只能是link(String)或null)。

我的问题有没有解决的办法。谢谢。

0 个答案:

没有答案