最近我开始在 Kotlin 工作。我正在使用 BoundaryCallback 机制在分页库中玩耍。当 API 调用没有失败时,它工作得很好,但如果失败,则无法重试服务器调用。 onItemAtEndLoaded()
永远不要再打电话了。
我已经尝试了所有方法,包括在不同门户上提供的解决方案。下面是我当前使用的 PageConfig 设置。
val pagedConfig = PagedList.Config.Builder()
.setPageSize(DATABASE_PAGE_SIZE)
.setPrefetchDistance(0)
.setEnablePlaceholders(true)
.build()
我也试过'
setEnablePlacehoder
' 真假都有,但没有运气。如果有人对分页库有良好的经验,请帮助我。
最佳答案
当我使用这个库时,我遇到了类似的问题。
我发现刷新内容的最佳方法是在数据源上调用 invalidate() ,但这仅在我们可能希望重新加载所有数据时才吸引刷新场景。
为了实现失败重试,可以通过创建和实现接口(interface)来手动处理这个问题,例如查看这个博客文章的例子。
请参阅可重试接口(interface) : https://medium.com/@SaurabhSandav/using-android-paging-library-with-retrofit-fa032cac15f8
关于android - onItemAtEndLoaded() 方法仅被调用一次并且不会在分页库中再次重试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56541668/