从Firebase数据库读取数据并在textview中显示

时间:2019-12-28 15:51:10

标签: android firebase kotlin

我正在使用Firebase学习Kotlin,我只是一个初学者,所以我在Firebase网站上找到了以下代码,以从Firebase数据库读取数据并将其显示在使用Kotlin的活动的TextView中。我想我已经理解了代码,并且解决了除“((Post :: class.java)”)以外的所有错误。 我没有活动或称为“发帖”的课程。它是什么,应该包含什么代码? 我想做的是仅从Firebase数据库中读取一个数据并将其显示在TexView中。

val postListener = object : ValueEventListener {
    override fun onDataChange(dataSnapshot: DataSnapshot) {
        // Get Post object and use the values to update the UI
        val post = dataSnapshot.getValue(Post::class.java)
        // ...
    }

    override fun onCancelled(databaseError: DatabaseError) {
        // Getting Post failed, log a message
        Log.w(TAG, "loadPost:onCancelled", databaseError.toException())
        // ...
    }
}
postReference.addValueEventListener(postListener)

1 个答案:

答案 0 :(得分:0)

Post::class.java返回KClass引用,而KClass具有属性java

https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.jvm/java.html

由于getValue()可以有一个POJO类,因此您可以在getValue()中使用它。

因此,基本上Pojo应该是一个包含将映射到数据库的字段的类。

例如,您可以创建以下数据类:

data class Post(
        val postName: String = "", 
        val postDescription: String = "")