当您使用导航架构注册工具栏时,它将创建一个箭头,允许您在您所在的片段上弹出。
在一些基本级别的片段上,我不想有汉堡菜单图标或箭头,而是一个自定义视图对象。
如何从视图中禁用后退按钮?
我尝试手动禁用,但很难找到如何使用导航拱门管理它。
val supportActionBar = activity?.actionBar
if (supportActionBar != null) {
supportActionBar.setDisplayShowHomeEnabled(false)
supportActionBar.setDisplayHomeAsUpEnabled(false)
supportActionBar.setHomeButtonEnabled(false)
supportActionBar.setHomeAsUpIndicator(null)
}
一个小时后,我希望我的痛苦和疏忽真的能帮助别人。在导航体系结构强制您将可绘制对象加载到导航图标中之后,我想出的唯一解决方案就是将其无效。
toolbar.navigationIcon = null
我用这个解决了这个问题:
val actionBar = (activity as AppCompatActivity).supportActionBar
actionBar?.setDisplayHomeAsUpEnabled(false)
无论如何,您还应该记住,您需要更改导航图以设置正确的popUpTo目标或以某种方式禁用系统后退按钮。