0
リストをループしてすべてのオブジェクトをRealm
に追加すると、RecyclerView
には1つのイメージしか表示されないため、次の各オブジェクトが上書きされます。今のレルム主キー制約例外:値はすでに存在します
私は3例を持っている:copyToRealmOrUpdate()
毎回の呼び出し
- は、保存されたオブジェクトを上書きします。
@PrimaryKey
と設定してinsert()
に電話するとRealmPrimaryKeyConstraintException: Value already exists: null
が投げられます。@PrimaryKey
注釈Realm
を削除するとコピートが完了し、RecyclerView
は正常に写真を表示できますが、さらにすべてのオブジェクトが自分の複製を持っている可能性があります。ここで
私のクラスです:私は直接の保存方法私ImageModel.class
Handler handler = new Handler() {
@Override
public void dispatchMessage(Message msg) {
super.dispatchMessage(msg);
final List<Picture> list = (List<Picture>) msg.obj;
realm.executeTransaction(new Realm.Transaction() {
@Override
public void execute(Realm realm) {
for (Picture current : list) {
realm.copyToRealmOrUpdate(current);
}
}
});
}
};
でリストを反復
RealmObjectクラス
public class Picture extends RealmObject implements Serializable {
@PrimaryKey String picURL;
//getters/setters
}
ハンドラとレルムwへのすべてのオブジェクト重複していない?
ハンドラ?何?どうして? – EpicPandaForce
'RealmPrimaryKeyConstraintException:値は既に存在します:ヌル'次に 'copyToRealmOrUpdate()'を呼び出すと 'imgURL'フィールドが' null'です – EpicPandaForce
答えがあなたを助けましたか? – OBX