Я получаю следующую ошибку, когда пытаюсь запустить свой код android.
No setter/field for richest-man-in-babylon found on class com.test.test.Book
Вот код, который получает информацию о книгах из базы данных
var list = ArrayList<Book> ()
val bookListener = object : ValueEventListener {
override fun onDataChange(dataSnapshot: DataSnapshot) {
// Get Post object and use the values to update the UI
for (eventSnapshot in dataSnapshot.children) {
list.add(dataSnapshot.getValue(Book::class.java)!!);
}
}
override fun onCancelled(databaseError: DatabaseError) {
// Getting Post failed, log a message
Log.w("Book", "loadBook:onCancelled", databaseError.toException())
// ...
}
}
database.addListenerForSingleValueEvent(bookListener)
, затем он загружает информацию в этот класс Книги
class Book {
var title : String = ""
var subtitle : String = ""
var uploadDate : Int = 0
var image : String = ""
get() = field // field here ~ `this.firstName` in Java or normally `_firstName` is C#
set(value) {
field = value
}
constructor () {
}
constructor (title : String, subtitle: String, image: String, uploadDate: Int) {
this.title = title;
this.subtitle = subtitle;
this.image = image;
this.uploadDate = uploadDate;
}
}
Я пытаюсь добавить название и подзаголовок каждой книги к объекту Book.
Что я делаю не так?
Вот структура для таблицы Firebase