Как перейти к половине фрагмента?(Компонент архитектуры навигации) - PullRequest
0 голосов
/ 21 ноября 2018

Я пытаюсь компонент архитектуры навигации в моем приложении.Ранее я использовал Fragment Transaction для достижения следующей функции.В основном я хочу перейти от.

FragmentA-> FragmentB (пользовательский фрагмент частично прозрачный и половина размера экрана)

Если я используюКомпонент навигации и попробуйте

Navigation.findNavController(view).navigate(R.id.action_FragmentA_to_FragmentB)

Затем в результате FragmentA заменяется FragmentB, а фрагмент фона не виден.

Я хочу знать решение, если оно разрешенопо компоненту архитектуры навигации.

PS: я слышал о вложенном хосте навигации, но хорошо ли его использовать из фрагмента.

Обновление:

FragmentB будет иметь действия для дальнейших транзакций и пример:

FragmentA-> FragmentB-> FragmentC (пользовательский фрагмент частично прозрачный и наполовинуразмера экрана)

И Fragment C должен заменить FragmentB, когда пользователь нажимает кнопку назад, и backStack должен поддерживаться для всех транзакций фрагмента.

Demo

Ответы [ 2 ]

0 голосов
/ 26 ноября 2018

TLDR: я использовал вложенные графики для выполнения требования.

Здравствуйте, спасибо за помощь, но навигация по BottomSheet достигается мной с помощью следующей процедуры.

  • MainActivity

    • NavHost ( FragXYZ-> FragA )
      • ( Внутри фрагмента A ) BottomSheetDialogFragment.show () для отображения bottomSheetMenu
        • ( Внутренний фрагмент B ) BottomSheetDialog Дочерний Фрагмент (начальный дочерний фрагмент BottomSheetDialogFragment с использованием транзакции фрагмента) расширяет NavHostF*

Демонстрация: GitHub

0 голосов
/ 21 ноября 2018

Вы можете использовать BottomSheetDialogFragment, чтобы получить желаемый результат.Дополнительная информация: https://developer.android.com/reference/android/support/design/widget/BottomSheetDialogFragment

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...