Android导航架构组件 - 系统的后退按钮退出应用程序

Him*_*iya 6 navigation android

我正在使用android的导航架构组件进行演示.我有activity两个fragments.

在活动的xml中,我添加了以下代码 -

<fragment
    android:id="@+id/main_container"
    android:name="androidx.navigation.fragment.NavHostFragment"
    android:layout_width="@dimen/match_constraints"
    android:layout_height="@dimen/match_constraints"
    app:defaultNavHost="true"
    app:layout_constraintBottom_toBottomOf="parent"
    app:layout_constraintLeft_toLeftOf="parent"
    app:layout_constraintRight_toRightOf="parent"
    app:layout_constraintTop_toTopOf="parent"
    app:navGraph="@navigation/nav_graph" />
Run Code Online (Sandbox Code Playgroud)

然后我将第一个片段设置为起始目的地.在第一个片段中,在按钮的单击上我做了以下 -

NavHostFragment.findNavController(this).navigate(R.id.action_firstFragment_to_secondFragment)
Run Code Online (Sandbox Code Playgroud)

它工作正常.现在,当我按下系统的后退按钮时,理想情况下我应该回到第一个片段,但应用程序退出.我究竟做错了什么?

Nit*_*ani 5

我想,这是在您的代码中发生的,只是因为您可能正在处理中的onBackPressed()功能BaseActivity。请仔细看。

我希望这可以帮助你。