2017-02-15 5 views
0

レルム・データベースを変更した後、私は2つの活性を有する活性A内の参照を失い、活動AとB アクティビティAは、当社(レルムオブジェクト)を有しています。活動AIから問題が製品を追加した後、活動Aにおける当社の参照がnullになることであると私アクティビティAで選択した会社への参照を保持製品(レルムオブジェクト)を追加することができ、アクティビティBはアクティビティBに行きますなぜ理解できないのですか?Realmobjectは活性B

だけ活動Bに(私はそれぞれの会社が主キーの会社IDを持っていると仮定しています)会社のIDを使用して、選択した会社を取得するためにレルムを使用することができたときに活動Aから会社参照オブジェクトを取っているのはなぜ
+0

は、ユーザーが活動Bを開いたときの活動Aでレルムインスタンスが閉じていませんか? – skywall

+2

いくつかのコードを書いてください。 – Stallion

+0

私はonPauseでそれをチェックしましたが、閉じていません。私は非常に大きいので、コードを投稿することはできません。この考え方は私の立場からは単純です。今私はANRエラーがあるかもしれないと思っています。非同期モードで製品の挿入を実行しようとしましたが、動作しませんでした。この問題は、アクティビティBのデータベースを変更した場合にのみ問題になります。 –

答えて

0

だけintentを使って活動AからBへの活動会社固有のキーを渡します。そのユニークなキーを使用して領域から会社を検索してください

Company company = realm.where(Company.class).equalTo("your company unique key column name",uniqueKeyPassFromActivityAForSelectedCompany).findFirst(); 

この企業オブジェクトをrealmデータベースから取り出して、あなたの製品オブジェクトに参照してください。私はその一意のキーからレルムオブジェクトを見つけるための私の記憶に依存しています:これは

注意を助けることを願っています。したがって、上記の構文にはタイプミスがある可能性があります。