Size: a a a

Cicerone Chat (RUS)

2018 September 18

JF

Johnny Five in Cicerone Chat (RUS)
Alexey Pushkarev
1. Если твоя активити наследник FragmentActivity, то setNavigator() правильнее делать в onResumeFragments
👌🏻
источник
2018 September 19

NK

ID:368901067 in Cicerone Chat (RUS)
Всем привет. Чем отличается supportAppNavigator от supportFragmentNavigator?
источник

A

Artur in Cicerone Chat (RUS)
ID:368901067
Всем привет. Чем отличается supportAppNavigator от supportFragmentNavigator?
Посмотрите в исходники, там всё очевидно. В кратце - первый поддерживает и навигацию на другую activity, второй - только навигацию внутри одной активити.
источник

Р

Роман in Cicerone Chat (RUS)
Вчера перевёл проект на версию cicerone которая в ветке new_screen_object. Идея с Screen в виде объекта отличная, и то, что сразу в классе экрана задавать методы getFragment() тоже супер.
источник
2018 September 20

KT

Konstantin Tskhovrebov in Cicerone Chat (RUS)
Роман
Вчера перевёл проект на версию cicerone которая в ветке new_screen_object. Идея с Screen в виде объекта отличная, и то, что сразу в классе экрана задавать методы getFragment() тоже супер.
В этой ветке все будет меняться. Но это ваш выбор 👌
источник

Р

Роман in Cicerone Chat (RUS)
Да, это я понимаю. Всё началось с того, что сам решил перейти на Screen objects, потому что хотелось параметры передавать нормально, а не кастить их через data. Решил сделать свою реализацию, а потом посмотрел, оказывается уже есть наработки. Решил сначала заюзать то что есть, а потом может кастомизировать под себя, понимая что это не конечный вариант у вас. Но библиотека на столько гениально простая, что даже если придётся чтото менять то не думаю что будет проблемно переделать в проекте.
источник

KL

Kirill L in Cicerone Chat (RUS)
как обычно реализуете 3ий пункт? за навигацию отвечают фрагменты? или в самих фрагментах вергается setNavigator?
источник

KL

Kirill L in Cicerone Chat (RUS)
посмотрите внимательно документацию (и другие проблемы есть).
я напишу все, что увидел беглым просмотром:
1) cicerone.navigatorHolder.setNavigator(navigator) в onCreate() нельзя делать - возможно у вас вообще из-за этого и ошибка (читайте док на гитхабе, там есть про onResumeFragments)
2) fragment.setRouter(cicerone.router) - после восстановления процесса роутер не просетится во фрагмент и все перестанет работать. просто сделайте поле в активити и доставайте внутри фрагмента из активити
3) навигацию во фрагменте запускайте в onResume
источник

KL

Kirill L in Cicerone Chat (RUS)
такая ситуация: перешел на экран, в onStart дернул exit()  и вылетел Exception на executePendingTransactions
источник

KL

Kirill L in Cicerone Chat (RUS)
насколько понимаю проблема в том что рано дернул exit, но хз как ее решить красиво
источник

ES

Eugene Shapovalov in Cicerone Chat (RUS)
Konstantin Tskhovrebov
НАДО собирать команды в транзакцию
вот вам ответ
источник

VN

Vitalii Nikonorov in Cicerone Chat (RUS)
вызов executePendingTransactions - очень спорный имхо, там по сорцам если пройтись - он может кинуть exception, если уже проводится другая транзакция, и при этом нет никаких проверок - т.е. на веру дергается метод
источник

KL

Kirill L in Cicerone Chat (RUS)
по сути это и происходит
источник

KL

Kirill L in Cicerone Chat (RUS)
и в идеале бы добавить штуку, которая будет чекать и если надо ждать
источник

KT

Konstantin Tskhovrebov in Cicerone Chat (RUS)
эта штука называется router
источник

KT

Konstantin Tskhovrebov in Cicerone Chat (RUS)
а ждать должен ваш код
источник

KT

Konstantin Tskhovrebov in Cicerone Chat (RUS)
и сетить навигатор только тогда
источник

KT

Konstantin Tskhovrebov in Cicerone Chat (RUS)
когда можно уже навигировать
источник

KL

Kirill L in Cicerone Chat (RUS)
то есть если навигация по фрагментам, то сетить надо во фрагментах?
источник

KT

Konstantin Tskhovrebov in Cicerone Chat (RUS)
что сетить?
источник