问题描述
我看过google github中给出的演示。但它只是返回 MediatorResult.Success(endOfPaginationReached = true)
同时,如果将其更改为 MediatorResult.Success(endOfPaginationReached = false)
,我的代码也会正常运行。
所以,我想知道 PREPEND 的具体含义是什么?
我问这个问题的原因是在refresing时遇到网络错误,而我的Room
中没有任何内容,Paging3不会给出任何提示。(虽然我可以通过添加错误来解决它mainView 中的tip view,我觉得不雅。)
解决方法
PREPEND 用于允许丢弃页面的非位置数据源。因此,如果您在第 5 页上,则丢弃了第 3 页和之前的第 3 页,然后向上滚动,边界将加载先前已丢弃的第 3 页。它允许您从分页源的中间重新初始化,而不是被迫在开头(参见 initialKey
参数)。