Android Google Paging库无效

时间:2018-03-22 06:02:08

标签: android android-architecture-components android-paging

我正在尝试在我的项目中实施Google的分页库。所有内容都已编码,网络调用正在 loadInitial ()但它永远不会进入 loadAfter ()。由于代码结构非常复杂,我不会直接在这里发布代码。

以下是存储库:

https://github.com/raghavsatyadev/PagingDemo

文件链接:https://github.com/raghavsatyadev/PagingDemo/blob/master/app/src/main/java/com/rocky/invmx/modules/order/OrdersActivity.java

3 个答案:

答案 0 :(得分:5)

您在getItem(int index)课程中覆盖了GenPagingRecyclerAdapter.java方法而未调用super.getItem(index)。如果查看PagedListAdapter.java并深入研究方法调用,您将看到此方法在内部调用loadAfter方法。首先,您的问题的解决方案是从getItem(int index)类中删除GenPagingRecyclerAdapter.java。因为您没有在其中执行任何操作,并且如果您确实要覆盖getItem(int index),请在开始时调用super.getItem(int index)

答案 1 :(得分:4)

这不是给定问题的答案,但实际上是类似的问题。

onBindViewHolder中使用getItem(int index)而不是从currentList获取项目。如已接受的答案所说-需要调用getItem来触发loadAfter中的DataSource

答案 2 :(得分:0)

调用 loadInitial()后不调用 loadAdapter()的问题的解决方法是删除

override fun getItem(position: Int): YourDataModel {
    return super.getItem(position)
}

由您 RecyclerViewAdapter (正在当前扩展 PagedListAdapter