【问题标题】:Realm Kotlin save dataRealm Kotlin 保存数据
【发布时间】:2019-03-27 16:51:45
【问题描述】:

我将RealmKotlin 一起用于示例应用程序。但是,无论出于何种原因,调用commitTranscation() 后数据都不会被持久化。 findAll() 方法始终将 size() 返回为 0。

realm.beginTransaction()
  val userImage = UserImages()
  userImage.image = byteArray
  realm.commitTransaction()

阅读

val userImage = realm.where(UserImages::class.java).findAll().last()

以上行总是将size() 返回为 0 并使应用程序崩溃。

如果有帮助,图片属性是byte array

这里有什么问题?

谢谢!

【问题讨论】:

    标签: android kotlin realm


    【解决方案1】:

    您必须使用insert 来实际保存新对象。比如:

    val userImage = UserImages()
    userImage.image = byteArray
    realm.beginTransaction()
    realm.insert(userImage)
    realm.commitTransaction()
    

    PS:您可以使用 executeTransaction 代替 begin + end 对。 像这样:

    realm.executeTransaction {
      realm.insert(userImage)
    }
    

    【讨论】:

    • facepalm。那确实奏效了。会接受答案。谢谢。
    猜你喜欢
    • 2016-02-17
    • 2016-12-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-09-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多