我有:
SplitViewController >> 1. NavigationController >> MainViewController >> NavigationController>> DetailViewControllerA
another link from SplitViewController above >> 2. NavigationController >> mainDetailViewController >> NavigationController >> DetailViewControllerA
当从MainDetailViewController
导航时,我希望在DetailViewControllera
上手动创建一个后退按钮。 但是如何从DetailViewControllera
返回到MainDetailViewController
呢?
当我用
_ = navigationController?.popViewController(animated: true)
只有nil
谢了。
问题就出在这里:
NavigationController >> MainViewController >> NavigationController>> DetailViewControllerA
不需要为DetailViewControllera
分配新的NavigationController
应该是这样的:
NavigationController >> MainViewController >> DetailViewControllerA
当您想要推送到DetailViewControllera
屏幕时,您只需像这样推送您的DetailViewControllera
即可。
let vc = UIStoryboard.init(name: "Main", bundle: Bundle.main).instantiateViewController(withIdentifier: "DetailViewControllerA") as! DetailViewControllerA
self.navigationController?.pushViewController(vc, animated: true)
然后在DetailViewControllera
中,您可以在按下后退按钮时轻松调用PopViewController
(如果使用手动按钮,否则后退按钮将默认显示为弹出功能)