Size: a a a

Android Architecture

2020 May 20

I

Igor in Android Architecture
Aleksey D.
а такой вариант не будет менее костыльным?

FeatureState

NormalState(List<String>) : FeatureState

DialogState(String, FeatureState) : FeatureState
не уверен, на первый взгляд выглядит усложнением,
мне кажется для диалога хватит и булевого флага

но на самом деле конечно лучше переделать UI, что бы избавиться от диалога,
но тут уже надо подходить индивидуально к задаче
источник

AD

Aleksey D. in Android Architecture
Igor
не уверен, на первый взгляд выглядит усложнением,
мне кажется для диалога хватит и булевого флага

но на самом деле конечно лучше переделать UI, что бы избавиться от диалога,
но тут уже надо подходить индивидуально к задаче
далеко не всегда можно избавиться от диалога 🙁
источник

I

Igor in Android Architecture
возможно,
но надо стараться мыслить в категории "ui это отображение view-state (aka view-model) в любой момент времени"
и пересматривать все эти подходы времени mvp/mvc
источник

AD

Aleksey D. in Android Architecture
осталось это дизайнеру предложить)
источник
2020 May 21

СА

Семен Александров... in Android Architecture
Подскажите является ли нормальным решение передавать VM в адаптер для RecyclerView, чтобы менять значение во фрагменте/активити ?
источник

I

Igor in Android Architecture
нет
источник

СА

Семен Александров... in Android Architecture
т.е. лучше через интерфейс ловить колбек все-таки в ту же VM ?
источник

I

Igor in Android Architecture
я именно такого подхода и придерживаюсь
источник

I

Igor in Android Architecture
в колбеках уже отправляете команды на VM
источник

AV

Alex Vayts in Android Architecture
Семен Александров
Подскажите является ли нормальным решение передавать VM в адаптер для RecyclerView, чтобы менять значение во фрагменте/активити ?
все очень просто, если у вас адаптер с колбэками - он универсальный и независимый, его можно использовать в разных местах и биндить колбэки к другим вьюмоделям

если зависит от конкретной вью модели - его использование ограничено
источник

СА

Семен Александров... in Android Architecture
Alex Vayts
все очень просто, если у вас адаптер с колбэками - он универсальный и независимый, его можно использовать в разных местах и биндить колбэки к другим вьюмоделям

если зависит от конкретной вью модели - его использование ограничено
понятно, спасибо
источник
2020 May 22

S

Sergey8827 in Android Architecture
Семен Александров
Подскажите является ли нормальным решение передавать VM в адаптер для RecyclerView, чтобы менять значение во фрагменте/активити ?
не вижу ничего плохого. если используется датабиндинг часто vm биндят прямо в xml и от туда делают вызовы и слушают поля. Главное тут не передавать ссылку ресайклер вьюва в вьюмодель. А еще аккуратней с подписками если юзаете лив дату, не пишите observeForeve внутри адаптера или иначе получите утечку.
источник

S

Sergey8827 in Android Architecture
Семен Александров
т.е. лучше через интерфейс ловить колбек все-таки в ту же VM ?
поробуй заинжектить вью модель в адаптер коином или даггером и подписывайся на ее изменения
источник

S

Sergey8827 in Android Architecture
Семен Александров
Подскажите является ли нормальным решение передавать VM в адаптер для RecyclerView, чтобы менять значение во фрагменте/активити ?
"чтобы менять значение в активити..." - это абсурд
источник

AD

Aleksey D. in Android Architecture
Sergey8827
поробуй заинжектить вью модель в адаптер коином или даггером и подписывайся на ее изменения
а просто в конструктор передать уже нельзя?)
источник

S

Sergey8827 in Android Architecture
Aleksey D.
а просто в конструктор передать уже нельзя?)
так может и проще
источник

S

Sergey8827 in Android Architecture
всеравно в активити создается адаптер
источник

S

Sergey8827 in Android Architecture
подскажите пожалуйста если я в тестах хочу дернуть приватные методы в презентере. Получается это только через рефлексию?
источник

СА

Семен Александров... in Android Architecture
Sergey8827
подскажите пожалуйста если я в тестах хочу дернуть приватные методы в презентере. Получается это только через рефлексию?
делать их неприватными ради тестирования
источник

S

Sergey8827 in Android Architecture
Семен Александров
делать их неприватными ради тестирования
ноу, всю реализацию лучше держать прайвет.  Конкретно у себя щас увидел, лучше вынести логику генерирующую данные в классы - источники данных,  и замокать, и стараться тестить внешнее апи
источник