レルムオブジェクトのプロパティを別のクラスである別のレルムオブジェクトと設定していますが、エラーが発生しています: '値'は管理対象オブジェクトではありません。レルム例外 'value'は有効な管理対象オブジェクトではありません
realmObject.setAnotherRealmObject(classInstance.returnAnotherRealmObjectWithValues())
クラスのインスタンスはanotherRealmObjectコンストラクタを受信して、ウィジェットからの値でメソッドを介してそれを返します:
:public ClassInstance(AnotherRealmObject anotherRealmObject){
mAnotherRealmObject = anotherRealmObject;
}
public AnotherRealmObject returnAnotherRealmObjectWithValues(){
mAnotherRealmObject.setId(RandomUtil.randomNumbersAndLetters(5));
mAnotherRealmObject.setName(etName.getText().toString());
return mAnotherRealmObject;
}
私は新しい別のレルムを作成していますが、右の道を(と思う)オブジェクト
mAnotherRealmObject = mRealmInstance.createObject(AnotherRealmObject.class);
これは、通過参照のために既に変更されているanotherRealmObjectを返すためですか?
'RealmObject realmObj = new RealObject();'でオブジェクトを作成すると、Realmによって管理されていないスタンドアロンの 'RealmObject'が実際に作成されています。 'realmObj = realm.copyTorealm(realmObj)'を使って、管理対象のRealmオブジェクトのインスタンスを取得することができます。プライマリキーを渡してから、スタンドアロンオブジェクトをパーセル経由で渡すよりもオブジェクトのクエリを実行する方がよいでしょう。レルムのプライマリキーを使用したクエリは超高速でなければなりません。 https://realm.io/docs/java/latest/#intentsを参照してください。 – beeender