Компонент навигации не может выйти из приложения - PullRequest
0 голосов
/ 25 сентября 2018

Используя Android Navigation Component, у меня есть 3 фрагмента, размещенных в одном действии.Фрагмент запуска - это фрагмент экрана-заставки (A), если пользователь не вошел в систему, я запускаю фрагмент входа в систему (B), если он вошел в систему, я запускаю фрагмент списка (C).

Таким образом, маршруты запуска могут быть A-> B-> C или A-> C.

Когда вы приземлитесь на B или C, нажатие назад должно убить приложение.Вместо этого NavigationController выполняет резервное копирование в A (я думаю, что A onActivityCreated определенно вызывается, в какой момент он падает, что, вероятно, не связано).

Поведение в Pop редакторе графиков для A -> B кажетсяпозвольте мне открывать разные фрагменты, но, кажется, нет возможности просто убить приложение.

Действительно ли мне нужно переопределить onBackPressed для этого поведения и просто убить действие?Поскольку это проще без NavigationController, обычно я просто заканчиваю действие, когда начинаю новое.

1 Ответ

0 голосов
/ 25 сентября 2018

Откройте текстовую вкладку в редакторе графиков, чтобы просмотреть XML-код, найдите два действия A -> B и A -> C и введите тег: app: clearTask = "true" , это должно убить ваше приложениекогда пользователь нажимает кнопку возврата.

Пример:

 <fragment
        android:id="@+id/launcher_fragment"
        android:name="com.example.LauncherFragment"
        android:label="launcher_fragment">
        <action
            android:id="@+id/action_launcher_to_login"
            app:destination="@id/login_fragment"
            app:clearTask="true"/>
        <action
            android:id="@+id/action_launcher_to_list"
            app:destination="@id/list_fragment"
            app:clearTask="true" />
    </fragment>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...