Here I have:
SplitViewController >> 1. NavigationController >> MainViewController >> NavigationController>> DetailViewControllerA
another link from SplitViewController above
NavigationController >> mainDetailViewController >> NavigationController >> DetailViewControllerA
I'd like to create a back button manually on DetailViewControllerA
when navigating from mainDetailViewController
.
But how to go back from DetailViewControllerA
to mainDetailViewController
?
When I used
_ = navigationController?.popViewController(animated: true)
It's only nil
Thanks.
The problem lies here:
NavigationController >> MainViewController >> NavigationController>> DetailViewControllerA
There is no need of assigning DetailViewControllerA
a new NavigationController
This is how it should be:
NavigationController >> MainViewController >> DetailViewControllerA
When you want to push to DetailViewControllerA
screen, you just need to push your DetailViewControllerA
like this.
let vc = UIStoryboard.init(name: "Main", bundle: Bundle.main).instantiateViewController(withIdentifier: "DetailViewControllerA") as! DetailViewControllerA
self.navigationController?.pushViewController(vc, animated: true)
Then in DetailViewControllerA
, you can easily call popViewController
on back button press(if using manual button, otherwise back button will show by default with pop functionality)