回收者查看项目。从多个来源获取数据

Xms*_*str 5 android android-recyclerview android-room

我制作了一个使用 RecyclerViev 并使用 ROOM 从数据库获取数据的应用程序。

以前,形成行项目所需的所有数据都位于单个类中。例如,“User.class”有字段“name”“lastName”。当然,我有 RecyclerView 适配器的用户对象列表。我还制作了数据库,使用 ROOM 来存储我的数据。

现在我想扩展我的应用程序。每个 RecyclerView 行不仅应显示用户的姓名,还应显示该用户的最后 3 个“订单”。所以我用一些字段创建了新的“Order”类,并为 ROOM 数据库正确注释了它,并使用 @ForeignKey 做了一些约束”

现在我有一个 RecyclerView、一个 RecyclerView 适配器、自定义行的单一布局和两个带有数据的类(还有两个数据库表)。形成将在 RecyclerView 中显示的对象(包含来自用户数据库和订单数据库的数据)的正确方法是什么?

Tod*_*tov 0

那么您可以创建一个新类,其中包含您需要在 RecyclerView 适配器中使用的所有属性,并在其中使用此类。此外,无需将新实体保存到数据库中。

另一种方法是仅使用这两种信息源,而不像我上面建议的那样创建新的 POJO。只需将所有用户和订单信息传递给您的适配器并从每个源中提取所需的信息即可。

我个人更喜欢第一种方法。此外,可能还有更好的方法,因此您可以进行更多研究。