Android房间,实体内的清单?

时间:2018-10-26 22:12:00

标签: java android android-sqlite android-room

我有以下实体:

public class SubItem
{
    //....code
    Location loc;
}
@Entity(tableName = "Item_table")
public class Item
{
    @PrimaryKey(autoGenerate = true)
    public long id;
    public String Name;
    //...code
    List<SubItem> subItems;
}

该应用由一个RecyclerView组成,该RecyclerView仅显示项目名称,并且当按下某个项目时,它应该在不同的活动中显示子项目,因此我只需要加载每个项目的所有信息,但不包括子项目。同时,我可能需要能够根据其子项属性(例如“位置”)来查询项,鉴于给定的代码不起作用,正确的处理方法是什么? 我认为this回答了为什么代码不起作用,但是我不理解所建议的解决方案吗?

1 个答案:

答案 0 :(得分:0)

您需要创建两个表Item_TableSubItem_Table,并使用ForeignKey设置它们之间的关系。 请参阅以下示例: https://android.jlelse.eu/android-architecture-components-room-relationships-bf473510c14a