Size: a a a

Cicerone Chat (RUS)

2021 March 03

S

Silent829 in Cicerone Chat (RUS)
Konstantin Tskhovrebov
1) возможно вы правы, и можно навесить разных методов в АппРедьюсер (я подумаю), но  новая архитектура Модо позволяет расширять все очень просто: достаточно обернуть АппРедьюсер вашим редьюсером и ловить эксепшны при вызове метода invoke
2) если это необходимо, то в параметры скрина я бы положил какое-то свойство, отвечающее за вид анимации, а в setupTransaction я бы по этому полю ориентировался как именно настроить транзакцию
3) в плане стека экранов replace и add ничем не отличаются у фрагмент менеджера. названия просто смущают. replace при добавлении нового экрана в стек очищает UI предыдущего, а add оставляет.
поэтому предпочтительнее всегда использовать replace, так как обычно новый экран полностью перекрывает предыдущий, и чтобы не жрать лишнюю память его UI следует выгрузить из памяти.
Add полезен в тех случаях, когда UI тяжелый и важно не тратить время на его восстановление при возврате. Например WebView или экран с картой
касательно первого)
источник

KT

Konstantin Tskhovreb... in Cicerone Chat (RUS)
ну, можно было restore не переписывать, а использовать AppReducer
источник

KT

Konstantin Tskhovreb... in Cicerone Chat (RUS)
а так все верно. расширяется легко)
источник

S

Silent829 in Cicerone Chat (RUS)
Konstantin Tskhovrebov
ну, можно было restore не переписывать, а использовать AppReducer
Как? Он же ненаследуемый
источник

S

Silent829 in Cicerone Chat (RUS)
Konstantin Tskhovrebov
а так все верно. расширяется легко)
фабрика обязательно должна не принимать никаких аргументов?
источник

KT

Konstantin Tskhovreb... in Cicerone Chat (RUS)
Silent829
Как? Он же ненаследуемый
так вы же просто оборачиваете редюсер. вот за рестор отвечать будет апп редюсер, а за ваш кастомный MyLaunch тот что вы написали
источник

S

Silent829 in Cicerone Chat (RUS)
Konstantin Tskhovrebov
так вы же просто оборачиваете редюсер. вот за рестор отвечать будет апп редюсер, а за ваш кастомный MyLaunch тот что вы написали
не понял
источник

АЕ

Алексей Ершов... in Cicerone Chat (RUS)
В общем, супер простой пример тут: https://github.com/alaershov/tossacoin
Пока не работает сохранение стейта навигации после смерти процесса, надо додумать, как это сделать.
источник

KT

Konstantin Tskhovreb... in Cicerone Chat (RUS)
источник

KT

Konstantin Tskhovreb... in Cicerone Chat (RUS)
@alaershov тут кое-с-чем экспериментирует :)
источник

KT

Konstantin Tskhovreb... in Cicerone Chat (RUS)
источник

KT

Konstantin Tskhovreb... in Cicerone Chat (RUS)
и это работает!
источник

KT

Konstantin Tskhovreb... in Cicerone Chat (RUS)
и зацените красоту и лаконичность Compose рендера
источник

KT

Konstantin Tskhovreb... in Cicerone Chat (RUS)
источник

KT

Konstantin Tskhovreb... in Cicerone Chat (RUS)
@ArkaNN1985 у тебя уже есть опыт, поясни пожалуйста: вот такой простой рендер, как я понимаю, будет терять стейт при возврате назад. так?
источник

AI

Arkadii Ivanov in Cicerone Chat (RUS)
Состояние UI будет потеряно да
источник

KT

Konstantin Tskhovreb... in Cicerone Chat (RUS)
если я правильно понимаю, то мы можем не последний элемент отображать, а все. но в каком-то контейнере друг поверх друга с непрозрачным фоном
источник

KT

Konstantin Tskhovreb... in Cicerone Chat (RUS)
и тогда все будет ок
источник

KT

Konstantin Tskhovreb... in Cicerone Chat (RUS)
типа как раньше фрагменты через add добавлялись
источник

KT

Konstantin Tskhovreb... in Cicerone Chat (RUS)
и тогда состояние не будет теряться
источник