分页库和房间具有不同的 PagedLists,取决于不同的请求

2024-03-21

我正在尝试使用新的 Android 架构组件设置所有列表:房间持久性库 https://developer.android.com/topic/libraries/architecture/room.html and 分页库 https://developer.android.com/topic/libraries/architecture/paging.html。但我面临以下问题。想象一个应用程序有很多相同型号的不同列表。每个列表都有自己的对服务器的 url 请求。某些元素可以在不同的响应中重复。所以我认为我必须插入和更新每个响应的所有元素到该模型的表。此外,每个请求都有页面。例如,elements/famous/0, elements/famous/1。因此,当收到第 1 页响应时,包含列表 0 的元素的列表必须添加第 1 页返回的元素。

返回 LivePagedListProvided 的 Room 请求如下所示:

@Query("SELECT * FROM elements")
fun getElements(): LivePagedListProvider<Int, Model>

当查询的某些元素发生变化,或者添加到数据库的元素影响查询时,LivePagedListProviderobservables 提供了变化,因此 UI 会自动变化。

问题是:我应该如何使用分页库根据不同的请求保存和检索可以包含在不同列表中的元素?


如果您仅使用一张表来本地存储收到的数据(来自对服务器的不同请求),那么每次更新此表后,您的所有数据源都将失效,这就是我们看到自动更新的原因。对于不同的请求,您可以使用不同的表,但这不好) 我想你可以写select query某些条件代表您对服务器的请求之间的差异,如果这些请求中的结果模型相同。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

分页库和房间具有不同的 PagedLists,取决于不同的请求 的相关文章

随机推荐

  • Objective-C 中连接 NSString 的快捷方式

    有没有什么捷径可以到达 stringByAppendingString Objective C 中的字符串连接 或使用的快捷方式NSString一般来说 例如 我想做 NSString myString This NSString test
  • 固定 - 液体 - 固定布局

    我想要一个 固定 液体 固定 跨浏览器兼容的布局 HTML body div col 1 div col 2 div col 3 CSS col 1 width 150px float left col 2 width 100 paddin
  • 如何初始化句柄

    Error Run Time Check Failure 3 The variable TextLabelVar is being used without being initialized 示例代码 HWND VarText char
  • AngularJS:ngRoute 未提供所需的主页

    我不知道为什么我的根目录 主页 无法正确路由 显示 这是我的 ASP Net Core 项目文件目录设置 这是我的MapRoute声明于Startup cs app UseMvc config gt config MapRoute name
  • 无法更新 UITableView

    我有 UITableViewController 作为 RootViewController 我需要根据从 RootViewController 线程启动的另一个线程获取的数据向表中添加行 当我从其他线程返回到 RootViewContro
  • 如何解析MICR线数据?

    我有一台数字支票扫描仪 能够从支票中捕获 MICR 线 它将以字符串形式返回原始格式的 MICR 行 并使用分隔符分隔帐号 路由号码和支票号码 然而 每个银行对该 MICR 行的格式都不同 因此没有标准的方法来解析该数据 我尝试过的一些公司
  • Pandas 更新多索引数据框中的值

    如何编辑多索引数据框的值 如果它是一个非多索引数据框 我知道我可以这样做 df at 0 foo 12 3 另外 这不起作用 df loc 0 foo a 12 3 考虑一个多索引列数据框 colnames foo foo foo po p
  • 启动 spring web mvc 应用程序时出现异常

    当我使用 spring 3 2 9 时 我的 spring 项目工作正常 但如果我将其更改为 4 1 4 则在启动应用程序时会出现以下异常
  • 使用 C# 向 GMail 发送 IMAP 命令

    我一直在尝试访问我的 GMail 帐户以从我的电子邮件帐户中检索未读电子邮件 但是 我只执行登录 之后的任何操作都不起作用 首先 我连接到服务器 然后发送登录命令 最后发送检查命令 问题是收到的响应仅涉及连接和登录 之后 它就停止等待从 S
  • 通用保存方法

    在我的通用存储库中 我需要编写通用 Save 方法 该方法将根据 id 编辑现有实体或添加新实体 public void Save
  • Docker:更改存储 docker 卷的文件夹

    On my Ubuntu EC2我使用 docker 容器托管一个应用程序 db数据和upload数据存储在卷中CaseBook data db and CaseBook data uploads这是使用以下命令创建的 docker vol
  • EFcore 中“FromSql”操作的结果中不存在所需的列“id”

    我有一个大问题FromSql就是这样 我有一个这样的模型 public partial class model public string name 我想从数据库 sql server 中的过程中获得一些结果 当我执行下面的代码时 var
  • Android 中的处理程序和内存泄漏

    请看下面的代码 public class MyGridFragment extends Fragment Handler myhandler new Handler Override public void handleMessage Me
  • 将一个静态共享库链接到我的共享库

    我在链接我当前正在从事的项目的一些选项方面遇到了一些困难 我正在尝试创建一个与其他 2 个库链接的共享库 我们称他们为libfoo so and libbar so 我的输出库必须是共享库 并且我想要静态链接libfoo so到生成的库 但
  • 无需 Visual Studio 即可部署到 Azure WebRole

    有没有一种方法可以将我的整个网站 Web 应用程序部署到 Azure WebRole 而不需要 Visual Studio Context IIS 网络部署 http www iis net downloads microsoft web
  • 如何在React Native中以redux形式设置隐藏字段?

    如何在React Native中以redux形式设置隐藏字段 我只是找不到任何方法来做到这一点 有什么帮助吗 我结束使用这个 this props dispatch change FORM NAME FIELD NAME VALUE 运行此
  • 为什么这个图在添加散点时失败,但在删除散点时却有效?

    我正在使用以下内容来绘制 x 日期和 y 小数 如果没有注释行 散点 它的效果很好 但是如果您取消注释它 它会在一个 x 轴上显示所有内容 我缺少什么 thanks import matplotlib pyplot as plt impor
  • 使用 TypeScript 实现流畅的 API?

    我正在尝试用 TypeScript 开发一个流畅的 api 我想使用它 如下所示 export interface Person firstName string lastName string new Builder
  • 您如何比较今年和去年同一周的同一天?

    大多数零售商在销售报告中使用商品日历 这可以帮助他们找到当年和上一年同一周的同一天 例如今天是 2016 10 10 星期一 上一年 2015 年同一周 星期一是 2015 年 10 月 12 日 我们如何通过 SQL 查询捕获这一点并将它
  • 分页库和房间具有不同的 PagedLists,取决于不同的请求

    我正在尝试使用新的 Android 架构组件设置所有列表 房间持久性库 https developer android com topic libraries architecture room html and 分页库 https dev