android - 如何在 Paging 3 中使用网络绑定资源?
问题描述
我想使用网络绑定资源,这意味着房间缓存与分页 3。如果有人这样做,请发布您的答案,谢谢。
解决方案
NetworkBoundResource
from architecture-components-samples只是一个帮助类,它包装了对网络 + 数据库缓存后面的资源的访问。在 Paging 中实现这种类型的分层数据的规范方法是使用RemoteMediator
,您可以将其传递给Pager
的构造函数。
RemoteMediator
本质上充当一个回调,当PagingSource
从数据库加载的数据用完时触发,然后您可以在其中进行网络获取,将新项目写入数据库并使 Paging 无效以获取新项目。这看起来很迂回,但它确保您拥有单一的事实来源,因此您的应用程序中显示和加载的所有项目都基于数据库中的内容。
推荐阅读
- python - 无法读取从 python 上的 TCP 客户端发送到 C# 中的 TCP 服务器的数据
- batch-file - 如何检查变量是否批量包含字母/短语?
- awk - 如何检查AWK脚本中的字符串数组是否包含值
- c - C 宏中的参数名称是否会对以前的定义产生副作用?
- java - 将 Jackson 与具有私有 Builder 的不可变类一起使用
- scala - 使用类型类时类型不匹配
- c++ - C++ 模板覆盖规则
- python-3.x - Discord.py 禁止不在我服务器中的成员
- java - AWS Lambda Java 错误:ClassNotFoundException
- python - 电报机器人 python | 类型错误:静音()缺少 1 个必需的位置参数:'args'