Как передать строковый параметр в модель представления в составлении?Android

Форум для тех, кто программирует под Android
Anonymous
Как передать строковый параметр в модель представления в составлении?

Сообщение Anonymous »

Как передать строковый параметр в ViewModel в Compose? Я имею в виду строковую переменную, а не жестко закодированную или сохраненную в приложении. Мне нужно передать его как параметр. Это только для целей обучения, сейчас это строка, но завтра это может быть, например, пользовательский объект.
В лабораториях по коду объясняется, как передавать параметры, которые можно сгенерировать с помощью приложения, например это:
companion object {
val factory : ViewModelProvider.Factory = viewModelFactory {
initializer {
MyViewModel(
MyApplication().container.repository
)
}
}
}

А затем использовать эту переменную сопутствующего объекта следующим образом:
viewModel: MyViewModel = viewModel(factory = MyViewModel.factory)

Но они не объясняют, как передать простой строковый параметр. Как я могу адаптировать этот код для получения строки в качестве параметра и передачи ее при инициализации модели представления?
Я попробовал то, что предложил CommonsWare, и, очевидно, он не компилируется, в нем чего-то не хватает. объяснение. Как передать переменную myString? Я просто хочу преобразовать эту фабрику, чтобы получить строковую переменную, но не знаю, как этого добиться.
companion object {
val factory : ViewModelProvider.Factory = viewModelFactory {
initializer {
LoadingScreenViewModel(
myString
)
}
}
}


Подробнее здесь: https://stackoverflow.com/questions/786 ... in-compose

Вернуться в «Android»