我正在使用导航图之类的Android体系结构组件创建一个活动应用程序。我有一个登录流程(登录,注册等)片段,该片段应具有标题栏,但没有菜单图标(汉堡图标)。
// App bar configuration
val appBarConfiguration = AppBarConfiguration(
setOf(
R.id.splashFragment,
R.id.signInFragment,
R.id.homeFragment
),
main_activity_layout
)
使用上面的代码,我设法将后退箭头(后退导航)更改为菜单图标。但是我只希望菜单图标位于homeFragment
中。 splashFragment
和signInFragment
中的菜单图标和后退导航箭头均不应存在。
我想要标题栏,因此完全隐藏应用程序栏不是解决方案。
答案 0 :(得分:0)
您可以使用OnDestinationChangedListener
:
navController.addOnDestinationChangedListener { controller, destination, arguments ->
if (destination.id == R.id.homeFragment) {
drawer.setDrawerLockMode(DrawerLayout.LOCK_MODE_UNLOCKED)
} else {
drawer.setDrawerLockMode(DrawerLayout.LOCK_MODE_LOCKED_CLOSED)
}
}