OnBackButtonPressed不会被调用。我看过其他地方,该功能适用于android硬件后退按钮。我想提醒用户输入图钉,然后他们才能返回上一屏幕。我的页面不是正常页面。这是一个标签页。.我该怎么做才能覆盖iOS上的导航后退按钮。
最佳答案
您需要使用自定义后退按钮替换默认的后退按钮,Xamarin Forms的导航栏已映射到iOS中的UINavigationBar
,因此您需要将自定义后退按钮设置为UILeftBarButtonItem
,如下所示
public override void ViewWillAppear(bool animated)
{
var backBtn = new UIButton(UIButtonType.Custom)
{
// setup your custom back button with title, image etc
}
backBtn.TouchDown += (sender, e) =>
{
//Handle back click here
};
NavigationController.TopViewController.
NavigationItem.LeftBarButtonItem = new UIBarButtonItem(backBtn);
}
您还需要在本机到表单之间架桥,以便在Xamarin PCL或共享项目中获得回调。
这个article中有完整的代码实现