I have a Navigation Controller with a View Controller displaying a button. The button is linked to another View Controller using a push segue which automatically adds a top navi
In Swift it would be calling the method
self.navigationController?.popViewControllerAnimated(true)
Obtain a reference to your UINavigationController and call
- (UIViewController *)popViewControllerAnimated:(BOOL)animated
on it.
In swift you can also call:
self.navigationController?.popToRootViewControllerAnimated(true)
If NavViewController is used with UIModalPresentationFullScreen then the below line will work
self.navigationController?.dismiss(animated: true, completion: nil)
If we use push segue, then use popViewController
@IBAction func backButtonClicked(_ sender: Any) {
self.navigationController?.popViewController(animated: false)
}
On Objective-C is
[self.navigationController popViewControllerAnimated:YES];
for a jump to the first root
controller
[self.navigationController popToRootViewControllerAnimated:YES];
or is a possible move to the specific controller
[self.navigationController popToViewController:(nonnull UIViewController *) animated:(BOOL)];
animation specific animation process of move the controller. If the animation is false
the controller will appear without animations.
The UIViewController
must be from one which is on the stack.