АЕ
Size: a a a
АЕ
AO
S
Screens) описываете AppScreen-ы. Если хочется различное поведение (два случая), то надо в каждой функции возвращающей AppScreen иметь параметр, который мы будем передавать ModoRender и еще в ViewModel говорить Modo, хотим мы сделать forward или replace. Зачем нужно первое?forward+replacePreviousScreen отличается от replace?AO
Screens) описываете AppScreen-ы. Если хочется различное поведение (два случая), то надо в каждой функции возвращающей AppScreen иметь параметр, который мы будем передавать ModoRender и еще в ViewModel говорить Modo, хотим мы сделать forward или replace. Зачем нужно первое?forward+replacePreviousScreen отличается от replace?S
АЕ
replacePreviousScreen в аргументы функции, которая создаёт экран?S
replacePreviousScreen в аргументы функции, которая создаёт экран?
KT
AppNavigator можно было переопределить метод errorOnApplyCommand, который позволял обрабатывать различные эксепшны, которые к примеру могут выбрасываться, когда нужно было сделать звонок (перейти на ActivityScreen), но пользователь не дал разрешение на него. И у ActivityScreen в блоке можно было обращаться к контексту, сейчас же я могу только вернуть интент, доступа к контексту нет (. У ModoRender доступа к контексту нет да и непонятно где обработка должна быть (в setupTransaction(…)?) Контекст есть у AppReducer, но его нельзя унаследовать, да и поле приватное. Как быть?FragmentScreen / AppScreen, в разных местах у меня может быть требование/желание показывать их по-разному (к примеру, с разными анимациями). Сейчас не вспомню точно как Вы ответили, но мы вроде бы сошлись на том, что в месте вызова метода роутера ему нужно передать конфигурацию с который мы бы хотели совершить навигацию, сейчас же кажется нужно в setupTransaction, как и в чичероне по выборке “предыдущий->следующий” навигатору решать как ему обрабатывать транзакцию. А разве это его обязанность? Подскажите, как быть и в курсе ли Вы этого вопроса? Не хотелось бы иметь простыню из ифовAppReducer / AppNavigator может по команде forward / navigateTo не только добавлять фрагмент, но и заменять его? Причем замена это поведение по умолчанию, у меня как-то не складывается это все в голове. Скорее всего просто потому что в Android предпочитается делать replace, а не add (может это с бэкстэком связано?). Я еще нуб и на этот вопрос пока скрупулезно ответ не искал. Но возник другой вопрос - почему сам экран решает, какой на него переход должен произойти (add / replace), а не роутер?setupTransaction я бы по этому полю ориентировался как именно настроить транзакциюreplace и add ничем не отличаются у фрагмент менеджера. названия просто смущают. replace при добавлении нового экрана в стек очищает UI предыдущего, а add оставляет.KT
S
setupTransaction я бы по этому полю ориентировался как именно настроить транзакциюreplace и add ничем не отличаются у фрагмент менеджера. названия просто смущают. replace при добавлении нового экрана в стек очищает UI предыдущего, а add оставляет.S
setupTransaction я бы по этому полю ориентировался как именно настроить транзакциюreplace и add ничем не отличаются у фрагмент менеджера. названия просто смущают. replace при добавлении нового экрана в стек очищает UI предыдущего, а add оставляет.KT
KT
S
KT
modo.forward(MyScreen(my_animation_params))S
modo.forward(MyScreen(my_animation_params))KT
S
KT
S