导航栏后退按钮的操作

Nit*_*esh 3 ios swift

当用户单击后退按钮时,我想显示带有确认的警报。这就是我尝试添加动作的方式。

self.navigationItem.hidesBackButton = true
let newBackButton = UIBarButtonItem(title: "<", style: UIBarButtonItemStyle.plain, target: self, action: #selector(ViewController.save(sender:)))
self.navigationItem.leftBarButtonItem = newBackButton
Run Code Online (Sandbox Code Playgroud)

这工作正常,但我想要默认的后退按钮图像而不是自定义标题。怎么做 ?

我也尝试了以下代码:

self.navigationItem.backBarButtonItem?.action = #selector(ViewController.save(sender:))
Run Code Online (Sandbox Code Playgroud)

...但动作也没有执行。

Ami*_*del 5

这可能会有所帮助。这不会覆盖返回操作,但您可以执行其他任务。

目标c

-(void)viewWillDisappear:(BOOL)animated
{
    [super viewWillDisappear:animated];
    if(self.isMovingFromParentViewController)
    {
        //On click of back or swipe back
    }
    if(self.isBeingDismissed)
    {
        //Dismissed
    }
    NSLog(@"%d",self.isBeingDismissed);
    NSLog(@"%d",self.isMovingFromParentViewController);
}
Run Code Online (Sandbox Code Playgroud)

迅速

override func viewWillDisappear(_ animated: Bool)
{
    super.viewWillDisappear(animated);
    if self.isMovingFromParentViewController
    {
        //On click of back or swipe back
    }
    if self.isBeingDismissed
    {
        //Dismissed
    }
}
Run Code Online (Sandbox Code Playgroud)