我在“活动”中将OnDestinationChangedListener
附加到NavController
上。
它对所有片段目标都适用。但是,当我导航到活动目标时,不会通知我的听众更改。
override fun onStart() {
super.onStart()
navFragment.findNavController().addOnDestinationChangedListener { controller, destination, arguments ->
Log.e("Navigation", "id: ${destination.id} label: ${destination.label}")
}
}
我如何也可以监听活动目的地的目的地更改?
答案 0 :(得分:1)
导航组件是为具有一个主要功能的应用程序设计的 具有多个片段目标的活动。主要活动是 与导航图相关联,并包含一个NavHostFragment 负责根据需要交换目的地。在带有 多个活动目的地,每个活动都有自己的导航 图。
所以,现在我认为您必须自己跟踪自己的活动。 :-(导航图似乎完全封装在一个活动中。