У меня есть страница формы xamarin, где пользователь может обновлять некоторые данные в форме. Мне нужно перехватить кнопку "Навигационная панель". Нажмите "Отправить", чтобы предупредить пользователя, если некоторые данные не были сохранены. Как это сделать?
Я могу перехватить аппаратную панель Bar Back Button, нажав на Android, используя Android.MainActivity.OnBackPressed()
, но это событие поднимается только на аппаратной панели Back Button Clicked, а не на панели навигации Back Button Clicked.
Я также попытался переопределить Xamarin.Forms.NavigationPageOnBackButtonPressed()
, но он не работает. Зачем?
Кто-то уже решил эту проблему?
Я также попытался переопределить OnDisappear()
, есть две проблемы:
- Страница уже визуально исчезла, так что "Вы уверены?" на предыдущей странице появится диалоговое окно.
- Невозможно отменить действие назад.
Итак, можно ли перехватить кнопку назад на панели навигации?