Ваш синтаксис неверен в первых двух. Если вы хотите передать анонимный класс таким образом, синтаксис должен использовать ключевое слово object
, и поскольку Observer является интерфейсом, а не классом, вам не нужно вызывать его конструктор с ()
. * 1003. *
liveDataTest.observe(this, object: androidx.lifecycle.Observer {
override fun onChanged(t: String?) {
TODO("not implemented")
}
})
Но так как это интерфейс с одной функцией Java, вы можете упростить синтаксис с помощью лямбды:
liveDataTest.observe(this) {
TODO("not implemented")
}