self.navigationController始终使用故事板返回nil到storyboard导航

时间:2016-09-29 19:28:30

标签: ios iphone swift uiviewcontroller storyboard

问题:我试图在我的viewcontroller中获取导航控制器的句柄,但它总是返回nil,下面是我的代码

层次结构:AppDelegate - > MainStoryboard - > nav抽屉 - > TestingStoryboard - >测试

从导航抽屉我打开viewControl,如下所示:

self.openNewStoryBoard(storyBoard: "testingone", scene: "initial")
func openNewStoryBoard(storyBoard:String, scene:String){
    let storyboard = UIStoryboard(name: storyBoard, bundle: nil)
    let controller = storyboard.instantiateViewController(withIdentifier: scene) as UIViewController
    self.present(controller, animated: true, completion: nil)

}

我的“testsone”故事板中有一个navigationcontroller,通过关系连接到viewContorller“initial” - “root view controller”到“viewController”,将它连接到testtingone类

在代码(testingOne)类中,我试图获取navigationcontroller的句柄,如下所示:

self.rootNav = self.navigationController!

但它总是最终没有

1 个答案:

答案 0 :(得分:0)

通过直接显示视图控制器,您可以一起绕过导航控制器。这就是为什么你在致电nil时获得self.navigationController的原因。您应该出示导航控制器。

为此,在故事板中只需将导航控制器的故事板ID设置为initial而不是视图控制器。