Size: a a a

Android Developers

2020 March 26

VM

Vadim Morozov in Android Developers
Ruslan Sharipov
согласен, геттеры должны быть. но они должны возвращать не значения, а какой-то обзервабл. LiveData или из рх.
суть в том, что вью модель хранит стейт и вьюмодель изменяет его. в вью на эти изменения подписывается.
а если вью просто надо прочитать значения один раз это ок, но в более сложных случаях начнется хаос и боль.
в моем кейсе данные статичны в AboutViewModel я возвращаю список SettingsItemViewModel который не будет меняться.
а в файле AboutListItemViewModel я использую для одного списка элемента.
источник

VM

Vadim Morozov in Android Developers
Ruslan Sharipov
так, стоп.
какая-то лажа с неймингом.
я думал мы про ViewModel'и говорим)
а тут простые модельки названы с суффиксом ViewModel)
да, я чутка запутался тут.
источник

RS

Ruslan Sharipov in Android Developers
Vadim Morozov
в моем кейсе данные статичны в AboutViewModel я возвращаю список SettingsItemViewModel который не будет меняться.
а в файле AboutListItemViewModel я использую для одного списка элемента.
+
нейминг запутал
источник

VM

Vadim Morozov in Android Developers
Ruslan Sharipov
+
нейминг запутал
AboutListItemViewModel по идее так и должен остаться, я про нэйминг сейчас
да и AboutViewModel тоже вроде как логично назвал, это же основная viewModel которую использую во фрагменте
источник

VM

Vadim Morozov in Android Developers
Ruslan Sharipov
+
нейминг запутал
и кстати SettingsViewModel это простой data class
источник

RS

Ruslan Sharipov in Android Developers
Vadim Morozov
AboutListItemViewModel по идее так и должен остаться, я про нэйминг сейчас
да и AboutViewModel тоже вроде как логично назвал, это же основная viewModel которую использую во фрагменте
AboutListItemViewModel может вполне стать AboutListItem. Но запретить оставить как есть я не могу. я просто пытаюсь сказать, что сущности с суффиксом ViewModel обычно выполняют другие задачи, чем просто хранение текущего стейта
источник

VM

Vadim Morozov in Android Developers
Ruslan Sharipov
AboutListItemViewModel может вполне стать AboutListItem. Но запретить оставить как есть я не могу. я просто пытаюсь сказать, что сущности с суффиксом ViewModel обычно выполняют другие задачи, чем просто хранение текущего стейта
не это понятно, замечание принято
AboutListItemViewModel меняю на AboutListItem
его содержимое остаётся ведь прежним?
источник

RS

Ruslan Sharipov in Android Developers
Vadim Morozov
не это понятно, замечание принято
AboutListItemViewModel меняю на AboutListItem
его содержимое остаётся ведь прежним?
дада, с ним все норм)
источник

VM

Vadim Morozov in Android Developers
Ruslan Sharipov
дада, с ним все норм)
SettingsViewModel то что обычный класс данных тоже вроде как не особо мешает
получается нужно избавиться от параметра в фабрике а именно clicklistenera
источник

RS

Ruslan Sharipov in Android Developers
да. причем есть ощущение, что его можно просто в адаптер сетить прямо из фрагмента, без прокидывания через вьюмодель и все должно заработать без проблем
источник

VM

Vadim Morozov in Android Developers
Ruslan Sharipov
да. причем есть ощущение, что его можно просто в адаптер сетить прямо из фрагмента, без прокидывания через вьюмодель и все должно заработать без проблем
да, + - так
причём я так первый раз и сделал))
источник

VM

Vadim Morozov in Android Developers
Ruslan Sharipov
да. причем есть ощущение, что его можно просто в адаптер сетить прямо из фрагмента, без прокидывания через вьюмодель и все должно заработать без проблем
просто мне не нравится что во фрагменте есть логика с нажатием
и я как тохотел её перенести во view model
источник

RS

Ruslan Sharipov in Android Developers
Vadim Morozov
просто мне не нравится что во фрагменте есть логика с нажатием
и я как тохотел её перенести во view model
логику надо выносить.
но тогда вьюмодели нужен навигатор, который будет осуществлять нужные переходы.
сейчас логика все еще во вью.
первое что в голову приходит - реализовать в активити интерфейс и передавать ее в фабрику приведя к интерфейсу.
блин, как же без di непривычно видеть все)
источник

VM

Vadim Morozov in Android Developers
Ruslan Sharipov
логику надо выносить.
но тогда вьюмодели нужен навигатор, который будет осуществлять нужные переходы.
сейчас логика все еще во вью.
первое что в голову приходит - реализовать в активити интерфейс и передавать ее в фабрику приведя к интерфейсу.
блин, как же без di непривычно видеть все)
эм тогда я щас лучше разберусь с листенером
а после добавлю DI
так как у меня он был реализован для MVP
источник

L

Line'R in Android Developers
Line'R
Есть у кого идеи как реализовать такое не используя coordinator layout и collapsing tab layout. А используя кастомнвй вьюгруп?
Как то так
источник

L

Line'R in Android Developers
Криво, косо. Но вроде даже то чего хотел)
источник

VM

Vadim Morozov in Android Developers
Ruslan Sharipov
логику надо выносить.
но тогда вьюмодели нужен навигатор, который будет осуществлять нужные переходы.
сейчас логика все еще во вью.
первое что в голову приходит - реализовать в активити интерфейс и передавать ее в фабрику приведя к интерфейсу.
блин, как же без di непривычно видеть все)
вот сейчас работает всё в таком виде
может ещё совет есть, пока я вот DI буду добавлять
а то в MVVM только щас вхожу
https://gist.github.com/mnewlive/41da1828713e9a37e5d36036ccb607da
источник

A

Alexey in Android Developers
Подскажите, а можно как-то проверить наличие данных в Room? В логи вывести например
источник

SA

Shabdan Abdykerimov in Android Developers
👌
источник

<

<Diff_Revolution/... in Android Developers
Кто в курсе как сделать чтобы селектор не перекрывал корнеры?
источник