我有一个名为 Person 的类,其中一个变量是一个名为 clothes 的 Realm 列表:
public class Person extends RealmObject{
private RealmList<Clothing> clothes;
}
衣服用于显示在 RecyclerView 中,其中的内容可以编辑,例如数量、衣服颜色或衣服类型。
当我编辑服装值时:
public void setCloth(int i, Cloth cloth) {
realmInstance.beginTransaction();
clothes.set(i, cloth);
realmInstance.commitTransaction();
}
当然,记录是保存下来的。我的问题是,如果用户取消对整个 Person 对象的编辑怎么办。然后衣服 list 的变化会一直存在。
请帮忙。
最佳答案
我相信您会非常喜欢嵌套事务 (https://github.com/realm/realm-java/issues/1509)。
在 Realm 的下一个版本中,将引入一个新方法 copyFromRealm()
。当您提交 Person
对象时,您应该复制 clothes
列表并使用 copyToRealmOrUpdate()
。
关于android - 在不提交事务的情况下编辑 Realm 对象关系,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34174801/