Android 如何使用导航组件库从底部导航更改片段上的工具栏图标?

Android 如何使用导航组件库从底部导航更改片段上的工具栏图标?,android,android-fragments,android-architecture-navigation,android-navigation,android-bottomnav,Android,Android Fragments,Android Architecture Navigation,Android Navigation,Android Bottomnav,我已经用navHostController设置了我的底部导航,我有一个带有工具栏的容器活动,我想根据我所在的片段更改工具栏中的图标,如果我不使用导航组件库,这很容易 主要活动 override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) bottomNavigationView.setupWithNavController(dashboardNavHostFragm

我已经用navHostController设置了我的底部导航,我有一个带有工具栏的容器活动,我想根据我所在的片段更改工具栏中的图标,如果我不使用导航组件库,这很容易

主要活动

 override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    bottomNavigationView.setupWithNavController(dashboardNavHostFragment.findNavController())
}


我想将工具栏中的图标更改为底部导航中的活动片段。

您可以使用
addOnDestinationChangedListener

比如:

navController.addOnDestinationChangedListener { _, destination, _ ->
   if(destination.id == R.id.xxxx) {
       toolbar.setNavigationIcon(R.drawable.xxxx)
   } else {
       //
   }
}

您可以使用
addOnDestinationChangedListener

比如:

navController.addOnDestinationChangedListener { _, destination, _ ->
   if(destination.id == R.id.xxxx) {
       toolbar.setNavigationIcon(R.drawable.xxxx)
   } else {
       //
   }
}