Size: a a a

Android Developers

2020 August 23

S

Singular in Android Developers
Vitaly Peryatin
Если вы ещё не используете такие паттерны как MVP или MVVM, можете в onCreate фрагмента поставить retainInstance = true
Тогда фрагмент не будет уничтожаться при изменении конфигурации устройства
Тогда список можно сохранить в поле фрагмента и делать подгрузку, когда list == null
Использую MVVM
источник

S

Singular in Android Developers
Мне в конструкторе ViewModel делать этот вызов тогда?
источник

VP

Vitaly Peryatin in Android Developers
Singular
Использую MVVM
В таком случае все данные должны храниться во ViewModel
Подгрузку данных можно делать в init (в конструкторе)
источник

S

Singular in Android Developers
Vitaly Peryatin
В таком случае все данные должны храниться во ViewModel
Подгрузку данных можно делать в init (в конструкторе)
ViewModel создаю в Activity. Запрос в сеть делаю из фрагмента. Запрос содержит состояния запроса прогресс бар
источник

VP

Vitaly Peryatin in Android Developers
Singular
ViewModel создаю в Activity. Запрос в сеть делаю из фрагмента. Запрос содержит состояния запроса прогресс бар
Удобно, когда у каждого Activity и Fragment своя ViewModel, отвечающая за логику конкретного Fragment/Activity
источник

VP

Vitaly Peryatin in Android Developers
Или есть какие-то везкие причины использовать именно ViewModel у Activity?
источник

S

Singular in Android Developers
не всегда и не совсем, плодить кучу классов плохой подход
источник

VP

Vitaly Peryatin in Android Developers
Singular
не всегда и не совсем, плодить кучу классов плохой подход
Да, разумеется
Но если у вас переплетаются слои, то код в читаемости еще больше страдает
Как минимум вы теряете удобный контроль над ЖЦ фрагмента и вам вручную надо писать как минимум +10 одинаковых строк кода в каждом фрагменте без ViewModel, чтобы поддерживать состояние фрагмента при изменении конфигурации
источник

VP

Vitaly Peryatin in Android Developers
Если фрагмент грузит какие-то данные из сети или БД, то ViewModel уже нужна как минимум чтобы переключиться на IO поток и поддержать корректное состояние UI
источник

ei

error_ io in Android Developers
Singular
ViewModel создаю в Activity. Запрос в сеть делаю из фрагмента. Запрос содержит состояния запроса прогресс бар
А разве логику не правильнее в ViewModel'е делать(загрузку данных с сети)
источник

S

Singular in Android Developers
error_ io
А разве логику не правильнее в ViewModel'е делать(загрузку данных с сети)
А если нет сети? Context в Viewmodel будешь юзать?
источник

S

Singular in Android Developers
Vitaly Peryatin
Да, разумеется
Но если у вас переплетаются слои, то код в читаемости еще больше страдает
Как минимум вы теряете удобный контроль над ЖЦ фрагмента и вам вручную надо писать как минимум +10 одинаковых строк кода в каждом фрагменте без ViewModel, чтобы поддерживать состояние фрагмента при изменении конфигурации
Спасибо, разобрался
источник

VP

Vitaly Peryatin in Android Developers
Singular
А если нет сети? Context в Viewmodel будешь юзать?
Смотря какой контекст
Если контекст Application, то его можно юзать во ViewModel
В противном случае ровно ту логику, которая требует Context я бы делегироватл Activity или Fragment
источник

TM

Tesla Model S in Android Developers
Разбирающиеся люди в apple, подскажите пожалуйста есть ли необходимость в дескретной видеокарте для программирования? (xcode, android studio). С дискреткой ценники уже кусачие ппц
источник

QH

Quantum Harmonizer in Android Developers
Tesla Model S
Разбирающиеся люди в apple, подскажите пожалуйста есть ли необходимость в дескретной видеокарте для программирования? (xcode, android studio). С дискреткой ценники уже кусачие ппц
нет, вообще не поможет. Надо SSD, память, проц.
источник

TM

Tesla Model S in Android Developers
Quantum Harmonizer
нет, вообще не поможет. Надо SSD, память, проц.
Спс!
источник

TM

Tesla Model S in Android Developers
Quantum Harmonizer
нет, вообще не поможет. Надо SSD, память, проц.
Эмуляторам же тоже не нужна дискретка?
источник

QH

Quantum Harmonizer in Android Developers
Tesla Model S
Эмуляторам же тоже не нужна дискретка?
ой, хорошее замечание. Не знаю.
источник

МП

Макс Провоторов... in Android Developers
Tesla Model S
Эмуляторам же тоже не нужна дискретка?
Нет
источник

МП

Макс Провоторов... in Android Developers
Моему ноуту встроенной хватает. Дискретку не задействует. Больше он на память жалуется
источник