В вашем фрагменте onCreate
добавьте обратный вызов OnBackPressedCallback
:
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
requireActivity().onBackPressedDispatcher.addCallback(this) {
backOrUpPressed()
}
}
Затем, после настройки панели инструментов с помощью NavController
, установите NavigationOnClickListener
:
override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? {
// Setup the view
setSupportActionBar(toolbar)
toolbar.setupWithNavController(findNavController(), AppBarConfiguration(findNavController().graph))
toolbar.setNavigationOnClickListener { backOrUpPressed() }
}
Затем реализуйте свою собственную логику Up / Back c в backorUpPressed()