我目前正在将我的应用程序从MVC迁移到MVVM。另外,我想使用协调器模式。由于我在应用中使用情节提要,因此在这里遇到了问题。
我成功地从情节提要中实现了视图控制器的实例化。但是,当我在协调器中初始化导航控制器UINavigationController()
时,该应用程序-当然不会像在情节提要中设计的那样使用导航控制器的设计。
是否可以从情节提要中初始化类似于视图控制器storyboard.inistantiateViewController(withIdentifier)
的导航控制器?
答案 0 :(得分:1)
我刚试过了,这行得通。你在做这样的事吗?
let storyboard = UIStoryboard(name: "Main", bundle: nil)
if let nc = storyboard.instantiateInitialViewController() as? UINavigationController {
print("got the nav controller")
}
// or if it's not the initial, you have to set the id in the storyboard
if let nc = storyboard.instantiateViewController(withIdentifier: "Nav") as? UINavigationController {
print("got the nav controller")
}