214 похожих чатов

Всем привет, такой вопрос: Вот есть вм, вот есть активити. Из

активити я вызываю условный vm.loadData(). Когда я это делаю, должен включиться условный прогресс-бар, который управляется простым ObservableBoolean и по завершении он должен убраться. Вопрос: управлять флагом изнутри вм или в активити вызывать что-то типа vm.beginWaiting() и потом vm.loadData()?

8 ответов

22 просмотра

Load начинается - сигналим, что нужно включать прогресс. Load закончился - сигналим, что нужно выключать прогресс.

⬤ vitaly- Автор вопроса
Leonid B.
Load начинается - сигналим, что нужно включать про...

Это да. Вопрос в том, сигналить из активити или внутри вьюмодели этим управлять.

⬤ vitaly
Это да. Вопрос в том, сигналить из активити или вн...

Если VM выполняет действие, то лучше, чтобы она и сигналы посылала через LiveData. Иначе как активити или кто угодно другой сможет вовремя узнать, когда операция завершена?

⬤ vitaly- Автор вопроса
Leonid B.
Если VM выполняет действие, то лучше, чтобы она и ...

Ну, если подразумевается, что у меня есть какая-то лайв дата, на которую я подписан, я могу там вызвать что-то типа vm.stopWaiting(), но всё же склоняюсь к тому, чтобы управлять этим изнутри вм.

⬤ vitaly
Ну, если подразумевается, что у меня есть какая-то...

На мой взгляд, это лишние телодвижения с begin/end waiting. VM замечательно может обновлять свою LiveData в начале и конце операции без дополнительных просьб со стороны UI. Захочет UI слушать эту LiveData или нет - его личное дело.

⬤ vitaly- Автор вопроса
Leonid B.
На мой взгляд, это лишние телодвижения с begin/end...

Я тоже так думаю. Спасибо за советы, так или иначе. А спрашиваю потому, что в случае, где MVVM не тотальный, как у меня (не вся работа с данными происходит через вм), то может возникнуть необходимость прям явно вызвать / прервать у вм ожидание из активити. В этой связи, кстати, ещё вопрос есть.

⬤ vitaly
Это да. Вопрос в том, сигналить из активити или вн...

Активити(вью) ничего не решает, а только исполняет

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

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

30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
13
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
в JclConsole объявлено так: function CtrlHandler(CtrlType: DWORD): BOOL; stdcall; - где ваше объявление с stdcall? у вас на картинке нет stdcall
Karagy
8
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Вот еще странный косяк, подскажите как бороться. Я git clone сделал себе всего embassy и примеры там запускаю. Всё хорошо. Но вот решил в cargo.toml зависимости не как в приме...
Lukutin R2AJP
2
Карта сайта