Size: a a a

Android arch. components

2019 May 22

VG

Vladimir Garkovich in Android arch. components
я для этого делал blankFragment
источник

VG

Vladimir Garkovich in Android arch. components
он открывается всегда. Потом активити смотрит "мы первый раз, го откроем туториал"
или "мы уже его смотрели, открываем хоум"
источник

A

Alexey Turkin in Android arch. components
а контент у этого бланка какой?
источник

A

Alexey Turkin in Android arch. components
или там юзер не замечает все равно
источник

VG

Vladimir Garkovich in Android arch. components
пустой, это blankDestination
источник

VG

Vladimir Garkovich in Android arch. components
он не успевает показаться
источник

A

Alexey Turkin in Android arch. components
я понял, спасибо
источник

S

Sergey in Android arch. components
Vladimir Garkovich
он не успевает показаться
Так это костыль или нормальная "заглушка"?
источник

VG

Vladimir Garkovich in Android arch. components
Sergey
Так это костыль или нормальная "заглушка"?
не знаю костыль, заглушка или единственное решение (но не вижу в нём ничего плохого). Но пока нет возможности задать динамический startDestination. Без него прилага упадёт на старте. Задать его можно только тогда, когда навХостФрагмент уже в заинфлейчен (а значит уже и закомитал стартДестинейшен).

Только 3 решения:
1) оставлять фрагментА как стартДестинейшен. В его старте делать проверки и если что, навигироваться к фрагментБ c popInclusive=fragmentA
2) сделать пустой фрагмент, в котором сделать проверки и открыть сразу нужный фрагмент без инфлейта ненужного
3) сделать графы Auth->Home->Blablabla
Home->Blablabla
и на старте руками создавать навхостфрагмент с нужным графом (если нет токена, то первый, иначе - второй).

Я выбрал второе, т.к. более гибкое и очевидное. И у меня слишком много ветвлений, чтобы копировать эти графы

Если есть более красивое решение - хотел бы узнать тоже
источник

S

Sergey in Android arch. components
Выходит это проблема не навигации, а проблема неопределенности стартового фрагмента. А в таких условиях и правда не совсем ясно как сделать правильно.
источник

VG

Vladimir Garkovich in Android arch. components
ну можно было бы сделать создание навконтроллера не только с айдишкой графа, а и с айдишкой стардестинейшена
источник

VG

Vladimir Garkovich in Android arch. components
но такой возможности нет
источник
2019 May 23

D

Danil Yudov in Android arch. components
Всем привет. Вопрос по Navigation Components.
Ситуация стандартная: Single Activity App, есть фрагмент с авторизацией и основной фрагмент с BottomNavigationView.
Сделал два графа: в первом графе AuthFragment и MainFragment (тот самый с BottomNavigationView), во втором всё остальное.
Первый граф размещается в активити, второй в MainFragment.
Всё работает как надо, кроме того, что не ясно как сменить фрагмент на уровне первого графа (т.е. перекинуть юзера на авторизацию). Переход к фрагменту либо не осуществляется вообще, либо переходит на уровне второго графа, так, что снизу остается BottomNavigationView. Есть ли нормальные способы?
источник

ST

Sasha Tainyuk in Android arch. components
Нормальный способ - это какой?
источник

D

Danil Yudov in Android arch. components
это такой, который в данной ситуации надлежит использовать, и который, вероятно, не должен выбиваться из стандартных способов работы с библиотекой навигации. т.е. navigate(AuthFragment) был бы нормальным способом
источник

ST

Sasha Tainyuk in Android arch. components
Ну так пряч боттом и вот нормальный способ
источник

D

Danil Yudov in Android arch. components
а то как сделал я: метод в активити, который вызывают фрагменты, когда им нужно перейти на экран авторизации — костыль, который выбивается на фоне остальных методов используемых для навигации в приложении
источник

D

Danil Yudov in Android arch. components
Sasha Tainyuk
Ну так пряч боттом и вот нормальный способ
офигенный. спасибо
источник

D

Danil Yudov in Android arch. components
(нет)
источник

ST

Sasha Tainyuk in Android arch. components
Юзай тогда чичерони, с этой либой нормальных вариантов нет.
источник