Size: a a a

Cicerone Chat (RUS)

2020 February 04

AD

Aleksey D. in Cicerone Chat (RUS)
Leff
спс, ща попробую
допускаю, что getScreenKey вызывается раньше getFragment и поэтому возвращается стандартное значение из ru.terrakok.cicerone.Screen
источник

L

Leff in Cicerone Chat (RUS)
да я видел что по дефолту берется имя класса
источник

L

Leff in Cicerone Chat (RUS)
Aleksey D.
там вроде нужно override fun getScreenKey делать
Прям отдуши!! Все зарботало, спасибо!👍🏻👍🏻👍🏻
источник

AD

Aleksey D. in Cicerone Chat (RUS)
Leff
Прям отдуши!! Все зарботало, спасибо!👍🏻👍🏻👍🏻
душевно в душу, приятного аппетита
источник

L

Leff in Cicerone Chat (RUS)
Aleksey D.
душевно в душу, приятного аппетита
жизнь программистам😂😂😂👍🏻
источник
2020 February 05

DS

Dzmitry Sobolevsky in Cicerone Chat (RUS)
Всем привет, подскажите, может кто делал кастомный навигатор для DialogFragment? (аля с методами showDialog(DialogScreen) & hideDialog(DialogScreen)?
источник

KT

Konstantin Tskhovrebov in Cicerone Chat (RUS)
Konstantin Tskhovrebov
Причин много, это не я такой упертый 😉
Про это можно много писать и рассказывать. Хоть целый митап. Пока нет возможности правильно работать с диалогами. И мой совет: не пытайтесь их прикрутить к командам роутера.
Вот вам на размышление: как вызвать показ трех экранов одной командой, среди которых запросто могут быть диалоги? И не должно быть коллизий с любыми другими командами. Снаружи мы не должны знать про реализации экранов.

Дайте полное решение, подходящие в общем случае. Тогда легко оно окажется в библиотеке.
В своих проектах можете делать как считаете правильным, но пока нет ответа на общие вопросы, то и в библиотеку нет смысла тянуть.

История ровно как и про гугловую навигацию.
👀
источник

DS

Dzmitry Sobolevsky in Cicerone Chat (RUS)
Нет, для диалогов отдельный навигатор и роутер, с методами показать\скрыть. Больше никаких других методов
источник

DS

Dzmitry Sobolevsky in Cicerone Chat (RUS)
Если делал так кто?
источник

DS

Dzmitry Sobolevsky in Cicerone Chat (RUS)
у меня кейс - в сервисе работа делается, пока эта работа идет нужно экран диалогом специальным закрывать.
Вроде как неплохо выглядит в сервисе
blabla()
.doOnSubscribe(dialogRouter.showDialog(screen)
.doFinally(dialogRounter.hideDialog(screen)

но вот с навигатором повозиться только...
источник

М

Михаил in Cicerone Chat (RUS)
Dzmitry Sobolevsky
у меня кейс - в сервисе работа делается, пока эта работа идет нужно экран диалогом специальным закрывать.
Вроде как неплохо выглядит в сервисе
blabla()
.doOnSubscribe(dialogRouter.showDialog(screen)
.doFinally(dialogRounter.hideDialog(screen)

но вот с навигатором повозиться только...
а если сервис будет в другом процессе?
источник

М

Михаил in Cicerone Chat (RUS)
я писал прям писал роутер для навигации по диалогам
источник

DS

Dzmitry Sobolevsky in Cicerone Chat (RUS)
про сервис я образно)
источник

DS

Dzmitry Sobolevsky in Cicerone Chat (RUS)
источник

AD

Aleksey D. in Cicerone Chat (RUS)
Dzmitry Sobolevsky
у меня кейс - в сервисе работа делается, пока эта работа идет нужно экран диалогом специальным закрывать.
Вроде как неплохо выглядит в сервисе
blabla()
.doOnSubscribe(dialogRouter.showDialog(screen)
.doFinally(dialogRounter.hideDialog(screen)

но вот с навигатором повозиться только...
так можно из VM или Presenter подписаться на общий таск и view через интерфейс или LiveData стучать
источник

AD

Aleksey D. in Cicerone Chat (RUS)
+ есть IBinder интерфейс, да
источник

DS

Dzmitry Sobolevsky in Cicerone Chat (RUS)
Aleksey D.
так можно из VM или Presenter подписаться на общий таск и view через интерфейс или LiveData стучать
Типа слушать observeTaskOptional()
.subscribe(o->(o.getTask()!=null)?getViewState(),show(o.getTask()):getViewState().hideDialogs())
?
источник

AD

Aleksey D. in Cicerone Chat (RUS)
Dzmitry Sobolevsky
Типа слушать observeTaskOptional()
.subscribe(o->(o.getTask()!=null)?getViewState(),show(o.getTask()):getViewState().hideDialogs())
?
типа делать это из UI части приложения, а не пытаться менять UI через Service
источник

DS

Dzmitry Sobolevsky in Cicerone Chat (RUS)
Да понял что не в ту степь понесло)
источник

DS

Dzmitry Sobolevsky in Cicerone Chat (RUS)
короче, шарить модель  в бэке, а ui пусть подпишется и делает с диалогами что хочет.
источник