Size: a a a

Cicerone Chat (RUS)

2020 December 21

P

Pavel in Cicerone Chat (RUS)
Всем привет. Есть такой стек фрагментов:
A - B - B. Задача: вернуть данные со второго фрагмента B в A, минуя первый B. Как можно это реализовать?
источник

LB

Leonid Belyakov in Cicerone Chat (RUS)
Pavel
Всем привет. Есть такой стек фрагментов:
A - B - B. Задача: вернуть данные со второго фрагмента B в A, минуя первый B. Как можно это реализовать?
Я делал через targetFragment:

Когда открываем первый "В", ставим setTargetFragment(A, requestCode)

Когда открываем второй "В", ставим setTargetFragment(currentFragment.targetFragment, currentFragment.targetRequestCode)

Когда закрываем второй "B", делаем вызов currentFragment.targetFragment.onActivityResult(...) и выходим
источник

А

Артур in Cicerone Chat (RUS)
Артур
Здравствуйте, для создания фрагмента через fragmentFactory нужен classLoader, нормально ли использовать метод ClassLoader.getSystemClassLoader() для его получения и использования в фабрике ? Или я что-то упустил и надо как-то иначе делать ?
Никто не использует cicerone v6 и fragmentFactory ? Глянул предыдущую версию, там можно было указать fragmentParams для создания через фабрику
источник

P

Pavel in Cicerone Chat (RUS)
Leonid Belyakov
Я делал через targetFragment:

Когда открываем первый "В", ставим setTargetFragment(A, requestCode)

Когда открываем второй "В", ставим setTargetFragment(currentFragment.targetFragment, currentFragment.targetRequestCode)

Когда закрываем второй "B", делаем вызов currentFragment.targetFragment.onActivityResult(...) и выходим
Спасибо. Просто интересно, есть ли способ реализовать это используя sendResult от Cicerone
источник
2020 December 27

KT

Konstantin Tskhovreb... in Cicerone Chat (RUS)
Кирилл
@terrakok Тут за тебя походу уже сделали фреймворк на Cicerony https://android-arsenal.com/details/1/8201
вот такое развитие Чичероне я поддерживаю - создание фреймворков поверх библиотеки. самый удобный выживет и найдет лояльных пользователей!
источник

К

Кирилл in Cicerone Chat (RUS)
Konstantin Tskhovrebov
вот такое развитие Чичероне я поддерживаю - создание фреймворков поверх библиотеки. самый удобный выживет и найдет лояльных пользователей!
Можно сделать список из таких фреймворков в вики
источник

KT

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

К

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

KT

Konstantin Tskhovreb... in Cicerone Chat (RUS)
думаю можно будет и в вики создать страницу, когда подобных проектов будет чуть больше
источник
2020 December 28

VS

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

KT

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

KT

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

KT

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

VS

Vladislav Shipugin in Cicerone Chat (RUS)
Ну тип зачем тащить библиотеку для библиотеки.
источник

VS

Vladislav Shipugin in Cicerone Chat (RUS)
Просто у меня с cicerone была проблема с разными навигаторами. Нужно провайдить через qualifier и роутер вложенной навигации пробрасывать через parentFragment.

Это сложно и не удобно
источник

KT

Konstantin Tskhovreb... in Cicerone Chat (RUS)
серьезно? транзитивные зависимости не нужны?
источник

VS

Vladislav Shipugin in Cicerone Chat (RUS)
Ну тип, лучше PR создать и закинуть, чем отдельную либу писать.

Там же не супер отдельная фича, а плюха для удобства. Если ее сделать частью cicerone, то много кто будет пользоваться
источник

AG

Alexander Gorodok in Cicerone Chat (RUS)
Vladislav Shipugin
Ну тип, лучше PR создать и закинуть, чем отдельную либу писать.

Там же не супер отдельная фича, а плюха для удобства. Если ее сделать частью cicerone, то много кто будет пользоваться
Может сразу PR cicerone в аосп тогда? Зачем вообще либы делать с такой логикой и использовать тоже странно выходит.
источник

VS

Vladislav Shipugin in Cicerone Chat (RUS)
Если что, у меня нет цели топить cicerone. Скорее Гугл навигация оказалась проще из-за метода getNavController().

Я несколько раз делал сложную навигацию на cicerone и google компонентах. Разницы как таковой нет, но на cicerone больше кода и сложнее.

И в частности этот фреймворк частично ее решает
источник

VS

Vladislav Shipugin in Cicerone Chat (RUS)
Ну то есть скажу другими словами. Flow Fragment всегда нужны если ты делаешь single activity + передача router тоже нужна. И я на предыдущих проектах писал много кода, чтобы реализовать эти концепции.

CiceroneFlows частично или полностью решают проблему с написанием большого кол-ва кода, но странно, что это стороняя либа, а не часть cicerone.
источник