亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Android:如何創建空領域對象?

Android:如何創建空領域對象?

楊魅力 2023-07-28 15:12:57
我嘗試通過以下代碼創建一個空的領域對象:val realm = Realm.getDefaultInstance()var arr = ArrayList<SildayAlarm>()val myModel: MyModel? = realm.createObject(MyModel::class.java)我的模型.kt@RealmClassopen class MyModel(    var code: Int? = 0): RealmObject()但我收到這樣的錯誤:java.lang.IllegalStateException:無法在寫入事務之外修改托管對象。在 /Users/cm/Realm/realm-java/realm/realm-library/src/main/cpp/io_realm_internal_OsObject.cpp 第 336 行
查看完整描述

1 回答

?
慕妹3146593

TA貢獻1820條經驗 獲得超9個贊

使用領域實例創建對象將在領域數據庫上執行事務。


因此,您應該必須將該代碼包裝在事務包裝器中。


1)


val realm = Realm.getDefaultInstance()

realm.beginTransaction();   // To start realm transaction.

val myModel: MyModel? = realm.createObject(MyModel::class.java) // Create a new object

realm.commitTransaction();   // To complete realm transaction.

或者使用realm的交易方式。


2)


val realm = Realm.getDefaultInstance()

realm.executeTransaction { realm ->

      val myModel: MyModel? = realm.createObject(MyModel::class.java) // Create a new object

}

筆記:


這個新創建的領域對象上的所有寫操作都應該在這些領域事務塊下執行。


查看完整回答
反對 回復 2023-07-28
  • 1 回答
  • 0 關注
  • 118 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號