Я пытаюсь следовать официальному руководству Android для ViewModels в Kotlin. Я буквально скопировал вставленный самый простой официальный пример , но синтаксис кажется незаконным.
Этот раздел вызывает проблему:
private val users: MutableLiveData<List<User>> by lazy {
MutableLiveData().also {
loadUsers()
}
}
Предварительный просмотр дает мне эту ошибку:
Property delegate must have a 'getValue(DashViewModel, KProperty*>)' method. None of the following functions is suitable.
И если я хочу запустить приложение, я получаю эту ошибку:
Type inference failed: Not enough information to infer parameter T in constructor MutableLiveData<T : Any!>()
Please specify it explicitly.
Я не понимаю эти две ошибки, и другие вопросы с той же ошибкой, похоже, были вызваны что-то другое. Я предполагаю, что MutableLiveData().also
вызывает проблему, но я не знаю почему. Это довольно странно, учитывая, что это официальный пример.