gpt4 book ai didi

android - 如何将 Firebase dataSnapshot 对象和 key 保存到 Kotlin DTO 数据类中?

转载 作者:行者123 更新时间:2023-12-05 00:05:46 25 4
gpt4 key购买 nike

目标:从 Android 设备更新 Firebase 实时数据库。

我的数据结构简化了:

enter image description here

我的数据类TasksDTO.kt:

data class TasksDTO(var customer : String ="", var date : String ="", var location : String ="", var key : String="") { 


}

我在 onCreate 下添加了一个 addValueEventListener:

 private var allTasks = ArrayList<TasksDTO>()//Used to update recyclerView. 
reference.child("tasks").addValueEventListener(object : ValueEventListener {
override fun onCancelled...

override fun onDataChange(dataSnapshot: DataSnapshot) {
val children = dataSnapshot.children

allTasks.clear()

children.forEach {

var taskObj = it.getValue()//without key: it.getValue(TasksDTO::class.java)
var task = TasksDTO()

with(task){
customer = taskObj.customer //**ERROR: Unresolved reference**
date = taskObj.date //**ERROR: Unresolved reference**
location = taskObj.location //**ERROR: Unresolved reference**
key = it.key!!
}

//
allTasks.add(task!!)

}
recyclerView.adapter!!.notifyDataSetChanged()


}

}

我希望能够在 recyclerView 的 onclick item listener 函数中更新 firebase 数据。为此,我需要引用 key 来更新数据库。除非有更有效的方法。我愿意接受更正。

感谢您的帮助!

最佳答案

获取 key 需要使用getKey()方法,例如:

taskObj = it.getKey() 

关于android - 如何将 Firebase dataSnapshot 对象和 key 保存到 Kotlin DTO 数据类中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57445571/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com