Android,Realm:Method" copyToRealmOrUpdate"不仅更新delta

时间:2017-08-28 09:04:27

标签: android realm

Android应用程序。

当我想创建或更新我的POJO到Realm时,我使用以下方法: copyToRealmOrUpdate 。行。

但是现在我想只更新已更改的字段(不是全部)。方法 copyToRealmOrUpdate 替换所有字段。但我只需要更新delta。 我怎么能这样做?

2 个答案:

答案 0 :(得分:0)

我认为你不能做那样的事情。 你必须更换整个物体。

答案 1 :(得分:0)

如果只需要更新几个字段,则需要查询对象并仅更新其中的一些字段,而不是覆盖整个对象。

r.executeTransaction((realm) -> {
    MyObject myObj = realm.where(MyObject.class).equalTo("id", id).findFirst();
    if(myObj == null) {
        myObj = realm.createObject(MyObject.class, id);
    }
    myObj.setDeltaField(newValue);
    // other fields
});