А можно подробнее про твой случай?

21 ответов

21 просмотр

Вьюха Получает на вход какие варианты (типа список элементов, даты, все в обьекте input) На выход по клику кнопки дергает callback Все верианты что получает вьюха на вход можно менять и они соответственно сразу должны отображаться Со всеми пунктами работало нормально и без remember (менял напрямую в input) Но вот другая кастомная вьюха не захотела пересоздаватся таким образом И мне пришлось вынести даты в remember Я вот щас писал и понимаю что что то тут не так...

А можно засунуть весь input в mutableStateOf ? Или так и нужно?

Silent829
А зачем что-то менять внутри вьюхи?

Что б менялось отображение И по нажатию кнопки вернуть результат целиком

Pavel Kravchenko
Что б менялось отображение И по нажатию кнопки вер...

так тебе внутрь вьюхи необязательно и не нужно ничего менять, это делается извне (как описывали ранее с помощью state hosting). И результат возвращать целиком тоже

Pavel Kravchenko
Есть пример?

камон, обычный @Composable + ViewModel или подобные, это чтобы не было десяток параметров на чтение и калбэков, можно состояния обернуть в дата класс, но с калбэками не решится дело. Можешь описать задачу хорошо?

Silent829
камон, обычный @Composable + ViewModel или подобны...

Экран использует ViewModel и state в data класе Кастомная вьюха (шит) Получает на вход какие варианты (типа список элементов, даты, все в обьекте input) На выход по клику кнопки дергает callback Она имеет в себе еще пару кастомных вьюх Типа DataPicker у которого есть разные параметры зависящие от состояния родительской вьюхи (минимальное, максимальное, выбраное значения) На выходе тоже коллбек

Pavel Kravchenko
Экран использует ViewModel и state в data класе К...

viewmodel содержит в себе state, передавай его в корневую вьюху свою и шарь его части по child. Все. Евенты прописываются во viewmodel и прокидываются также как и state (где нужен туда и прокидывай через родителя). Почитай state management в доке и про udf в кодлабе про state

Sergey Yzenev
viewmodel содержит в себе state, передавай его в к...

Но таким образом все вьюхи будут завязаны на viewModel

Pavel Kravchenko
Экран использует ViewModel и state в data класе К...

зачем ей и вьюмодель и стейт? ViewModel - model for a view (~ state).

Silent829
зачем ей и вьюмодель и стейт? ViewModel - model fo...

state это обьект которым передаются данные А VIewModel это класс который за эти данные отвечает

Pavel Kravchenko
Но таким образом все вьюхи будут завязаны на viewM...

необязательно все, ну и что тут плохого? Не одна же ViewModel. Для каждой View своя ViewModel.

Pavel Kravchenko
state это обьект которым передаются данные А VIewM...

ну так ViewModel же и содержит эти данные и из нее ты и получаешь этот state

Silent829
необязательно все, ну и что тут плохого? Не одна ж...

Ну то что кастомной вьюхе занть о viewmodel совершенно ни к чему Ее задача сильно проще

Silent829
необязательно все, ну и что тут плохого? Не одна ж...

там где не ViewModel, там data class или что-то полегче + калбэк

Silent829
ну так ViewModel же и содержит эти данные и из нее...

Ну да Это выходит из того что я сказал

Silent829
какие аргументы?

Зачем мне эта связанность? Я хочу переиспользовать эту вьюху и с другими экранами и соответственно вьюМоделями

Похожие вопросы

Обсуждают сегодня

Но, может, есть уже проверенная? Наши требования такие: 1. Сообщения должны приходить из Инста в CRM оду 2. Должна быть возможность подключить несколько экаунтов Инстаграм. Р...
Alexander Sharoiko MSE / Александр Шаройко
7
Вопрос на перед, на следующую пятницу. Сколько строк кода можно вешать на одного программиста, понятно что если проект хорошо написан то можно и миллион. Но есть же где то пре...
AlekseyK Kluchnikov
31
Немного оффтопа: а кто на чем сидит для осдева в плане ide/редактора? Последнее время сидел на vscode, но я его прям не могу нормально воспринимать, перешел на сlion, но меня...
Evg Resh
29
День добрый, подскажите пожалуйста, есть ли какой-то способ сказать ребару не компилировать определённое приложение? Всю доку их перечиатл ничего подобного не нашёл
Кирилл
14
Я правильно понимаю что нет способов получить список ожидающих заявок на вступление в группу с помощью бота из mtproto?
Шамиль Прилов
7
Это может быть все-таки не флудвейт? у меня ботфазер принимает изменения и отображает даже что они изменились, на видео видно что он прислал якобы уже измененное описание, н...
OVERLINK
13
Всем привет Подскажите, какой план выбирать на Heroku Если я хочу запускать scheduled jobs (queues) на своем сервере? Я так понимаю для queues запускаются на отдельных workers...
Egor Chernenko
1
Вот объясните, как это работает: Вот есть допустим unix-подобная система, и программа запускает допустим printf или fork, как это передается ядру, и как оно обрабатывать начин...
Егор
14
Что за японодичь? Мне хоть m68k, хоть 8080, 8088, на любом можно что-то создать
Егор
5
А какие существуют способы обработки ошибок выделения памяти в ядре? Т.е., допустим, есть функция, которая возвращает адрес свободной страницы в физической памяти и диапазон в...
disba1ancer
51
Карта сайта