如何正确创建使用主键扩展RealmObject的新对象?

时间:2016-11-02 16:09:56

标签: android realm

我尝试使用Realm但是很多错误。我的回答是: 如何在Realm中使用主键创建新对象?

这是我的对象:

public class InventoryItem extends RealmObject{

    @PrimaryKey
    private long id;
    private int iconId;
    private String name;
    private double weight;

    // ... setters/getters
}

1 个答案:

答案 0 :(得分:2)

两种方式:

1。)创建具有在创建时直接设置的主键值的托管对象

realm.createObject(InventoryItem.class, primaryKeyValue);

2。)创建非托管对象,然后设置ID,然后将其复制/插入Realm

InventoryItem inventoryItem = new InventoryItem();
inventoryItem.setId(primaryKeyValue);
realm.insertOrUpdate(inventoryItem);

当然,对Realm的任何写入都必须在写入事务中完成。