使用导航从一个片段导航到另一个片段后,防止后按工作
Posted
技术标签:
【中文标题】使用导航从一个片段导航到另一个片段后,防止后按工作【英文标题】:prevent on back pressed to work after using navigation to navigate from one fragment to the other 【发布时间】:2020-09-03 19:14:00 【问题描述】:您好,我使用导航组件和导航图从一个片段导航到另一个片段,我想要完全防止 onBackPressed,这样当用户单击 onBack 时,应用程序将退出。我正在从注册片段导航到主页片段。
这是导航图中的代码
<fragment
android:id="@+id/register_fragment"
android:name="manu.apps.firebaseloginregister.fragments.RegisterFragment"
android:label="Register Fragment"
tools:layout="@layout/register_fragment">
<action
android:id="@+id/action_register_to_home_fragment"
app:destination="@id/home_fragment"/>
</fragment>
<fragment
android:id="@+id/home_fragment"
android:name="manu.apps.firebaseloginregister.fragments.HomeFragment"
android:label="Home Fragment"
tools:layout="@layout/home_fragment">
</fragment>
这是我在单击注册按钮时在注册片段中导航的代码
Navigation.findNavController(view).navigate(R.id.home_fragment);
【问题讨论】:
【参考方案1】:您可以查看此To handle onBackPress。 但是,在您的情况下,我认为您想导航到主页并清除导航堆栈。所以你可以试试Clear stack after navigate。
【讨论】:
以上是关于使用导航从一个片段导航到另一个片段后,防止后按工作的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 JetpackNavigation 组件从 BottomSheetDialogFragment 导航到另一个 Fragment