有谁知道在应用程序以断开的网络启动的情况下如何显示 LoadStateAdapter ?我正在使用 Paging 3 - 3.0.0-alpha13 (beta-01 在我的实现中丢失了密钥)
情况:
将LoadStateAdapter作为页脚添加到PagingDataAdapter
在我们在 LoadStateAdapter 中收到状态(LoadState.Error)的情况下,例如在网络丢失的情况下,此状态使“ loaderItem ”可见
loaderItem在其基于 loadState 的 displayLoadStateAsItem 方法返回true时显示。默认情况下,当loadState = LoadState.Loading或LoadState.Error时会发生这种情况
- LoadStateAdapter 添加为页脚监视 loadState。附加
- LoadStateAdapter 添加为 Header 监视 loadState。前置
如果冷启动的应用程序无法访问网络 RemoteMediator会抛出MediatorResult。错误({“无法解析主机... ”})
loadState中的错误“到达” 。调解员和loadState。refresh append 和 prepend 不接收错误具有NotLoading状态 (endOfPaginationReached = false) loaderItem未显示。
冷启动情况下LoadStateAdapter 出现在缓存列表后面的列表末尾时,如何正确获取结果?
ps: 我试图创建我的方法
fun LoadStateWithBlackJackAndHookers (footer: LoadStateAdapter <*>): ConcatAdapter {
addLoadStateListener {loadStates ->
loadStates.mediator? .let {
if (it.refresh is LoadState.Error) {
footer.loadState = it.refresh
}
}
footer.loadState = loadStates.append
}
return ConcatAdapter (footer, this)
}
它没有给出预期的结果,LoadStateAdapter开始收到错误消息但不显示loaderItem