如何在应用程序到达 android 中的应用程序首页后禁用后退导航?
How to disable back navigation after app reaches home page of the app in android?
我正在使用一个 Activity,我的 android 应用程序中有许多片段。
我有一个主 Activity 和 Navhost。和 3 个碎片。
fragment1 作为主页片段,它是导航的起点。
fragment1 导航到 fragment2,
片段 2 导航到片段 3。
它从片段 3 导航到主片段,即片段 1。
从片段 3 到达片段 1 后,如果我在片段 1 中返回按,它会再次导航到片段 3 而不是退出应用程序。
我应该如何禁用从主页片段到片段 3 的后退导航。
我用过
navController.navigate(navController.getGraph().getStartDestination());
在片段 3 中。不工作。
因为片段 3 还活着。
@Override
public void onBackPressed()
{
finishAffinity();
}
我试过了,它成功了。
navController.popBackStack(R.id.fragment2,true);
navController.popBackStack(R.id.fragment3,true);
navController.navigate(navController.getGraph().getStartDestination());
我正在使用一个 Activity,我的 android 应用程序中有许多片段。
我有一个主 Activity 和 Navhost。和 3 个碎片。 fragment1 作为主页片段,它是导航的起点。 fragment1 导航到 fragment2, 片段 2 导航到片段 3。
它从片段 3 导航到主片段,即片段 1。
从片段 3 到达片段 1 后,如果我在片段 1 中返回按,它会再次导航到片段 3 而不是退出应用程序。
我应该如何禁用从主页片段到片段 3 的后退导航。
我用过
navController.navigate(navController.getGraph().getStartDestination());
在片段 3 中。不工作。
因为片段 3 还活着。
@Override
public void onBackPressed()
{
finishAffinity();
}
我试过了,它成功了。
navController.popBackStack(R.id.fragment2,true);
navController.popBackStack(R.id.fragment3,true);
navController.navigate(navController.getGraph().getStartDestination());