граф A -> B -> C(с BottomNavigationView) -> D -> E
startDestination указан A, но я проверяю его в конкретном случае перехожу к C с параметрами:
app:popUpTo="A"
app:popUpToInclusive="true"
Далее, перехожу из C в D и в E, и тут случается странное:
Если в E нажать в ту область экрана, где в A была кнопка "продолжить" -> сработает onclicklistener этой кнопки из A, и все, естественно, попадает.
Кто нибудь с таким сталкивался?
Никаких элементов от A я не вижу в E, если что, никаких флагов uivisibility не стоит.
Я вот думаю, а как оно может вызвать лиснер А? У тебя же вьюха убитая у А, разве нет?
Вот и я думаю, на кой я сменил fragmenttransaction на это фенси дер*мо.
Я не думаю, что оно что-то другое под капотом делает. Вангую, что там тот же replace. Попробуй залогать onDestroyView у фрагмента А
Слушай, а ты этот клик лиснер точно нигде ещё не используешь??
Оу... а ты знаешь, он не срабатывает.
Точно нигде больше не использую.
Странно как. А какой точный флоу экранов? Можешь ещё раз описать?
Кстати, ты стартовый фрагмент попнуть не можешь в nav component
Сам флоу подразумевает у меня что A - одноразовый экран-приветствие (нажимаем продолжить и он больше никогда не покажется юзеру) B - экран логина - показывается, если юзер не залогинен C основной экран прилы
Я уже пробовал менять на ходу startDestination, это привело к другим багам
Я как-то боролся с этой залупой. Есть костыль в одном проекте, в другом как-то распетлял все же. Если будет актуально могу вечером посмотреть
Да, спасибо большое заранее!
Обсуждают сегодня