Я хочу проверить фактический фрагмент, если он грязный, и предупредить пользователя, чтобы он потерял свои изменения. Я не мог найти слушателя на Navcontroller для взаимодействия до того, как произойдет навигация.
Я уже пытался установить прослушиватель для BottomNavigationView, но в результате после сброса навигация перестала работать.
requireActivity().bottomNavigationView.setOnNavigationItemSelectedListener{menuItem ->
DialogUtil.showBeforeLeaveDetailFragmentDialog(context!!){
requireActivity().bottomNavigationView.setOnNavigationItemSelectedListener(null)
findNavController().navigate(menuItem.itemId)
}
false
}
Есть ли какой-нибудь глобальный слушатель, который я могу использовать, или другое чистое решение?