最近我将聊天消息的实现从 Paging2 迁移到 Paging3。使用旧实现,初始消息从DB加载,如果为空,则使用函数onZeroItemsLoaded从 netowkork 加载初始数据束,随后调用onItemAtEndLoaded和onItemAtFrontLoaded加载更多数据,使用 Paging3 我们使用 LoadType 进行复制相同的行为。
从调试中我看到每次进入消息视图时都会调用 LoadType.REFRESH 来刷新数据库中的初始数据,这是预期的行为吗?如果是这样,如何避免这种情况并且仅在DB为空时才加载初始数据?
注意:我知道我可以检查数据库的状态并决定要做什么,但我正在寻找 Paging3 库解决方案。