【发布时间】:2017-11-22 05:30:48
【问题描述】:
在我的主故事板中,我有 1 个导航控制器和后续的 swift 文件 NavigationCtr.swift。
viewController 在不同的xib中。
现在我想从 NavigationCtr 类中推送我的 viewController。
let vcFirst = FirstViewController(nibName: "FirstViewController", bundle: nil)
self.navigationController!.pushViewController(vcFirst, animated: true)
我遇到了一个异常
致命错误:在展开可选值时意外发现 nil
所以当我尝试从 viewDidLoad 打印时
print(self.navigationController)
在 NavigationCtr.swift 类中它给出了 nil。所以没有任何效果
我在目标 C 中创建了一个新项目,它运行良好。 附上故事板图片 高度赞赏直接方向的任何提示。 注意:-我是 swift 新手
【问题讨论】:
-
请说明您是如何在代码中从“NavigationCtr”推送 ViewController。
-
在您的图像中,它只显示 NavigationCtr ViewController 并且它被设置为入口点。所以看起来你没有添加 NavigationController。你需要选择ViewController,选择Edit -> Embed In -> Navigation Controller。
-
从情节提要中我删除了 ViewController 并放置了一个 navigationController。所以这个想法是主故事板将只有 navigationController 和 ViewCtr 将在不同的 xibs
-
为什么情节提要只有navigationController?照@totiG 所说的去做;在storyboard中创建一个ViewController,选中它,然后点击Editor -> Embed in -> Navigation Controller
标签: ios swift uinavigationcontroller storyboard