Size: a a a

Cicerone Chat (RUS)

2020 October 21

KT

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

ES

Eugene Shapovalov in Cicerone Chat (RUS)
Евгений Кузовкин
Ну так ещё раз - если очень надо, то подписываться в onCreate() фрагмента, чтобы не потерять данные. В остальных случаях - по клику. Т.е. решать это опять таки не средствами библиотеки
но в этом случае библитека, должна обработать кейс, что если данные есть, уведомить слушателей
источник

KT

Konstantin Tskhovreb... in Cicerone Chat (RUS)
и проблема после смерти процесса обширнее.
источник

KT

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

AC

Arsen CeH9 in Cicerone Chat (RUS)
Konstantin Tskhovrebov
там будет реактивная модель с состоянием данных - это не относится непосредственно к результату.
ну так реактивная модель обсервится на весь жц экрана
источник

ЕК

Евгений Кузовкин... in Cicerone Chat (RUS)
Konstantin Tskhovrebov
и проблема после смерти процесса обширнее.
Я к тому и веду, что текущее решение ок, а пытаться обработать смерть процесса - излишнее усложнение. Если надо - можно это решить другими способами
источник

ЕК

Евгений Кузовкин... in Cicerone Chat (RUS)
В том смысле, что остаётся на усмотрение разработчика самого приложения
источник

KT

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

AC

Arsen CeH9 in Cicerone Chat (RUS)
Konstantin Tskhovrebov
там onCreate вызовется только когда вернетесь!
вечером посмотрю сэмпл на этот кейс, онкриейт не вызывается для фрагмента который в бекстеке но не активный? (replaced)
источник

KT

Konstantin Tskhovreb... in Cicerone Chat (RUS)
Евгений Кузовкин
Раз вернулись к истокам с передачей результата, возникают мысли про dialog fragment'ы. Я знаю про твой (можно на ты?) взгляд на работу с ними, что они не относятся к навигации.

К чему я, нет ли какого-то способа заменить работу с ними через targetFragment на решение с Cicerone? например, добавить возможность работы с ними отдельными командами, без цепочек, без взаимодействия со стеком, но чтобы можно было передавать результаты. У нас сейчас в проекте по ощущениям больше половины мест, где общаются фрагменты, это DialogFragment или BottomSheet.
кстати, если вы используете диалог только ради того, чтобы под ним был виден предыдущий экран, теперь это можно сделать через флаг, который добавит фрагмент поверх предыдущего
источник

ЕК

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

AC

Arsen CeH9 in Cicerone Chat (RUS)
а форвард не добавлял поверх предыдущего?
источник

ЕК

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

KT

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

я долго не добавлял такой возможности, так как есть хитрый кейс:

есть фрагмент А
поверх открыли Б (через add транзакцию, то есть А может быть виден на фоне)
потом аналогично открыли В (то есть на фоне могут быть видны оба А и Б)

теперь самое интересное:
из В вызываем навигацию: replace(Г)

ожидается, что теперь будет на экране Г, а на фоне видны А и Б, но для этого навигатор должен был как-то знать, что предыдущие фрагменты добавлены через add, и теперь это реализовано.
источник

KT

Konstantin Tskhovreb... in Cicerone Chat (RUS)
то есть разработчик может внутри В вообще не заботиться о том, как именно его открыл Б
источник

AC

Arsen CeH9 in Cicerone Chat (RUS)
реплейс (андроидовский) ведь удаляет все фрагменты контейнера
источник

AC

Arsen CeH9 in Cicerone Chat (RUS)
Arsen CeH9
реплейс (андроидовский) ведь удаляет все фрагменты контейнера
поч А и Б останутся видны?
источник

AC

Arsen CeH9 in Cicerone Chat (RUS)
разве что в случае pop + add
источник

ЕК

Евгений Кузовкин... in Cicerone Chat (RUS)
> bottom sheet можно сделать как фрагмент!
Вот это интересно. На боевых проектах кто-то было такое? Хочу понять трудозатраты при миграции всех боттом шитов и других диалогов
источник

AC

Arsen CeH9 in Cicerone Chat (RUS)
затраты на коммуникацию с фрагментом, тем же резалт апи
источник