Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Dismiss Modal NavigationController from pushed ViewController inside

I have an iPad app and I'm using the storyboard. I'm presenting a modal view, which I wrap in a UINavigationController. It's a modal "Settings" view with it's own navigation.

I have a delegate setup to dismiss the modal view itself with a Done button in the Settings view which works fine, but I need to be able to dismiss it even after it has pushed another view when the user taps a setting.

So, basically a "cancel" button on the right side of the Navigation bar in the pushed views. Instead of having to go back to the first "Settings" view to hit the done button.

I've tried setting up a second delegate for the pushed view without success:

enter image description here

like image 433
jhilgert00 Avatar asked Dec 14 '12 18:12

jhilgert00


1 Answers

Just add a bar button item and put this line in its action method:

[self.presentingViewController dismissViewControllerAnimated:YES completion:nil];

The presenting view controller will be the controller that presented the modal, not the navigation controller.

like image 118
rdelmar Avatar answered Nov 05 '22 23:11

rdelmar