2

From the examples I've seen unwind segue needs a view controller to unwind to. If i just want to go back one controller in my storyboard is there a simple command for this?

rmaddy
  • 298,130
  • 40
  • 468
  • 517
Jeef
  • 25,082
  • 16
  • 71
  • 136

2 Answers2

7

If you've pushed onto a navigation controller (push segues, with a visible back button) then you use this code to go back:

[self.navigationController popViewControllerAnimated:YES];

If you've used modal segues, use this:

[self dismissViewControllerAnimated:YES completion:nil];

In both cases self is the currently visible view controller.

jrturton
  • 113,418
  • 30
  • 247
  • 261
  • This is a really helpful answer.. Thanks! – ICL1901 Jul 24 '14 at 11:38
  • 1
    Just in case anyone needs it, `dismissViewControllerAnimated` doesn't (at least, for me) work for **custom segues**. Use `self.performSegueWithIdentifier("idCustomSegueUnwind", sender: self)`. Does anyone know how my custom segue will be performed when `dismissViewControllerAnimated` is called? – ton Nov 20 '15 at 03:40
0

In the newest version of swift it will work like this:

dismiss(animated: true, completion: nil)

Assuming you call this in the view controller script.

Rietveld
  • 1
  • 1