首页 > 解决方案 > 如何防止 popBackStack() 从 startFragment

问题描述

基本上,当我站在我的 startFragment 上并按回时,它会调用此方法,该方法位于MainActivity

override fun onBackPressed() {
    navController.popBackStack()
}

然后我的堆栈位于我的导航主机片段上。当我按下屏幕上的任何按钮时,它会崩溃,因为默认导航片段中没有声明任何导航。如何防止popBackStack()转到导航主机碎片?

标签: androidkotlinnavigation

解决方案


请打开您的导航图,然后检查您拥有的每个片段的弹出行为启动选项,如下图所示。

使用这些选项,您可以配置片段在按下后退按钮时的行为方式。

图片

最后请彻底通读这篇文章


推荐阅读