Transformations.map с ViewModel и LiveData в Androidx (проблема)

https://github.com/neuberfran/SmartDrive11/blob/master/app/src/main/java/com/example/neube/smartdrive/controlamotores/SmartViewModel.kt

У меня есть вышеуказанный проект, основанный на этом:

https://firebase.googleblog.com/2017/12/using-android-architecture-components_20.html

и у меня проблемы с изображением:

https://drive.google.com/drive/folders/1_M3KBZnFXkX6I1dMNLejNZAAqrs_QBA9?usp=sharing

Может кто поможет?


comment
Думаю, я решил проблемы в классе SmartViewModel, но теперь я не могу использовать модель просмотра в действии: drive.google.com/drive/folders/ обновлено: github.com/neuberfran/SmartDrive11/blob/master/app/src/main/   -  person Neuber    schedule 24.05.2019


Ответы (1)


Вы импортировали неправильный тип функции. это должен быть androidx.arch.core.util.Function, а не import java.util.function.Function

В вашей деятельности: если ваша ViewModel - kotlin, вы должны ссылаться на живые данные, такие как hotStockViewModel.hotStockLiveData, поскольку это свойство.

В JVM такие свойства, как «hotStockLiveData», будут иметь «get HotStockLiveData» и «setHotStockLiveData», которые из kotlin называются как hotStockViewModel.hotStockLiveData, но в JAVA вы можете использовать hotStockViewModel.getHotStockLive, поэтому вы не можете определить (), поэтому getHotStockLiveData () "в viewModel.

person Gergely Hegedus    schedule 24.05.2019
comment
данные не считываются, возможно, проблема в моем обновленном классе / репозитории данных: github.com/neuberfran/SmartDrive11/blob/master/app/src/main/ drive.google.com/file/d/1x76RdtdZDT-O5kezpszr29UszFtUEleq/ - person Neuber; 24.05.2019
comment
Если вы не получаете свои данные в реальном времени, я бы проверил реализацию FirebaseQueryLiveData и попытался добавить туда несколько журналов, чтобы увидеть, делегированы ли данные туда. - person Gergely Hegedus; 27.05.2019
comment
drive.google.com/file/d/1lvRzroWt1BpKERdKAACM У меня проблема с логикой. Я не могу изменить значение todoItem.PararUm (411) внутри цикла while. Посмотрите на класс SmartModel и в мой новый обновленный проект ниже: github.com/neuberfran/SmartDrive11/blob/master/app/src/main/. - person Neuber; 27.05.2019
comment
в smartModel вы объявили их как val aka final, если вы хотите изменить их, сделайте их var. - person Gergely Hegedus; 29.05.2019
comment
Не решено, спасибо, резюмируя проблему / проект: я превратил снимок в liveata, liveata, которые (согласно документации) могут использоваться только в Ui / OnCreate. Я попробую kotlinx-coroutines-play-services с ожиданием внутри цикла while в MainActivity.kt. - person Neuber; 29.05.2019