При использовании архитектуры навигации начиная с здесь , здесь clearTask устарела.
Мой сценарий таков: есть 2 экрана входа и регистрации, оба имеют ссылки друг на друга.Таким образом, вы можете перейти к регистрации из входа, а также войти из регистрации. Но на задней панели приложение Press должно быть закрыто.
Это можно сделать, просто добавив clearTask к обоим действиям, как показано ниже.
<?xml version="1.0" encoding="utf-8"?>
<navigation xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/nv_auth_phase"
app:startDestination="@id/fragment_login">
<fragment
android:id="@+id/fragment_login"
android:name="com.jobhook.ui.auth.login.LoginFragment"
android:label="LoginFragment"
tools:layout="@layout/fragment_login">
<action
android:id="@+id/nv_action_login_to_registration"
app:clearTask="true"
app:destination="@id/fragment_registration" />
</fragment>
<fragment
android:id="@+id/fragment_registration"
android:name="com.jobhook.ui.auth.registration.RegistrationFragment"
android:label="RegistrationFragment"
tools:layout="@layout/fragment_registration">
<action
android:id="@+id/nv_action_registration_to_login"
app:clearTask="true"
app:destination="@id/fragment_login" />
</fragment>
</navigation>
Но так как оно устарелоЯ пробовал другое решение, такое как добавление popUpTo -> Id графика навигации, делая launchSingleTop равным true в обоих действиях .Кажется, в моем сценарии ничего не работает.
Я также проверил этот вопрос , но не нашел решения.