How to go back one view in UINavigationController?

21,418

Solution 1

I don't mean to be rude, but this is really well documented. A google search or even an Apple documentation search on UINavigationController will turn up exactly what you need. To programmatically pop the current view controller you use:

[[self navigationController] popViewControllerAnimated:YES];

To pop to a specific view controller, you use:

[[self navigationController] popToViewController:controller animated:YES];

You will have to iterate through the list of view controllers first and check the title against what you're looking for and pass that to this method.

Solution 2

Take a look at popViewControllerAnimated:.

From the documentation: This method removes the top view controller from the stack and makes the new top of the stack the active view controller.

Usage is something like:

[aViewController popViewControllerAnimated:YES];

Solution 3

Swift 3 version

navigationController?.popViewController(animated: true)

To pop to a specific view controller, you use:

navigationController?.popToViewController(controller, animated: true)

You will have to iterate through the list of view controllers first and check the title against what you're looking for and pass that to this method.

Share:
21,418
Slee
Author by

Slee

Updated on December 01, 2020

Comments

  • Slee
    Slee over 3 years

    Is there a method to go back one view in the stack on a UINavigationController? Or to a view with a specific title?

  • Slee
    Slee almost 14 years
    LOL, you're right - that was pretty silly. I even looked at that method a couple of times. In my defense I am really new to this and still grasping concepts - although popViewController is pretty much self explanatory when you new things don't alway click right away.
  • Steve Gear
    Steve Gear over 11 years
    Hi... when i am using this [[self navigationController] popToViewController:controller animated:YES]; app is crashing... Can you please tell me why?
  • Matt Long
    Matt Long over 11 years
    @SteveGear There could be many reasons that it's crashing. Does the crash happen immediately, or is there a delay. Do you see the animation at all (assuming you've passed YES to the popViewControllerAnimated: call). Often when you get crashes during a view controller pop, there is some delegate you've set in the view controller that is still being accessed. This often happens when you've set your view controller as the delegate for a map view, for example. I can' be sure what the issue is without seeing some code and context for your issue.