以编程方式向 Controller 显示导航

Show navigation to Controller programatically

我正在将菜单 VC 从故事板更改为程序操作。

当我想加载另一个 VC 时,我正在使用 Action Segue“Show”。

我正在使用的临时代码有效,但会在顶部弹出 VC。您能否以编程方式操作等效的“显示”,如果可以,如何操作?

let storyBoard: UIStoryboard = UIStoryboard(name: "Main", bundle: nil)
let newViewController = storyBoard.instantiateViewController(withIdentifier: "SunriseSunsetResultsViewController")
self.present(newViewController, animated: true, completion: nil)

要执行 Show segue 曾经执行的操作,请将 present 替换为 show:

let storyBoard: UIStoryboard = UIStoryboard(name: "Main", bundle: nil)
let newViewController = storyBoard.instantiateViewController(withIdentifier: "SunriseSunsetResultsViewController")
self.show(newViewController, sender: self)

但是请注意,这将执行与 present 相同的操作,除非 self.navigationController 不是 nil。换句话说,除非导航控制器负责界面,否则您无法进行以前的横向导航。

而不是 show 你可以说 pushViewController 等,但同样的警告适用。只有导航控制器才能完成您之前所做的事情。