У меня есть mutableStateof в моей HiltViewModel с именем loading. Я обновляю значение загрузки из функции в модели представления, которое передается в функцию @composable и используется там.
Дело в том, что значение загрузки отлично обновляется в модели представления, но не отражается в @ Составная функция.
Моя модель представления:
@HiltViewModel
class AuthenticationViewModel @Inject constructor(
private val repository: AppRepository,
application: Application
): ViewModel() {
val loading = mutableStateOf(false)
fun update() = viewModelScope.launch {
loading.value = true
}
}
Значение загрузки обновляется здесь, но не отражается в @composable
@Composable
fun LoginScreen(
viewModel: AuthenticationViewModel,
actions: MainActions
) {
val loading = viewModel.loading.value
//Loading is another composable function where bool value is passed
Loading(state = loading)
CustomNavigationButton(title = "Sign In",enabled = true,onClick =
{viewModel.update()})
}
Теперь, когда я нажимаю кнопку навигации, вызывается функция модели представления, и состояние загрузки также обновляется, но не отражается обратно в @Composable
Загрузка Composable:
@Composable
fun Loading(state:Boolean) {
var showDialog by remember { mutableStateOf(state) }
if(showDialog){
Dialog(onDismissRequest = { showDialog = false }, DialogProperties(
dismissOnBackPress = false,dismissOnClickOutside = false
)) {
Box(
modifier = Modifier.size(100.dp).background(Color.White, shape = RoundedCornerShape(8.dp)),
contentAlignment= Alignment.Center,
){
CircularProgressIndicator()
}
}
}
}
Подробнее здесь: https://stackoverflow.com/questions/700 ... in-compose
Обновление mutableStateOf в модели представления, но без эффекта в @Compose ⇐ Android
Форум для тех, кто программирует под Android
1732648801
Anonymous
У меня есть mutableStateof в моей HiltViewModel с именем loading. Я обновляю значение загрузки из функции в модели представления, которое передается в функцию @composable и используется там.
Дело в том, что значение загрузки отлично обновляется в модели представления, но не отражается в @ Составная функция.
Моя модель представления:
@HiltViewModel
class AuthenticationViewModel @Inject constructor(
private val repository: AppRepository,
application: Application
): ViewModel() {
val loading = mutableStateOf(false)
fun update() = viewModelScope.launch {
loading.value = true
}
}
Значение загрузки обновляется здесь, но не отражается в @composable
@Composable
fun LoginScreen(
viewModel: AuthenticationViewModel,
actions: MainActions
) {
val loading = viewModel.loading.value
//Loading is another composable function where bool value is passed
Loading(state = loading)
CustomNavigationButton(title = "Sign In",enabled = true,onClick =
{viewModel.update()})
}
Теперь, когда я нажимаю кнопку навигации, вызывается функция модели представления, и состояние загрузки также обновляется, но не отражается обратно в @Composable
Загрузка Composable:
@Composable
fun Loading(state:Boolean) {
var showDialog by remember { mutableStateOf(state) }
if(showDialog){
Dialog(onDismissRequest = { showDialog = false }, DialogProperties(
dismissOnBackPress = false,dismissOnClickOutside = false
)) {
Box(
modifier = Modifier.size(100.dp).background(Color.White, shape = RoundedCornerShape(8.dp)),
contentAlignment= Alignment.Center,
){
CircularProgressIndicator()
}
}
}
}
Подробнее здесь: [url]https://stackoverflow.com/questions/70024264/mutablestateof-updating-in-view-model-but-no-effect-in-compose[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия