我们已经有相同的问题,UINavigationController 返回 nil ,但它们都与 segues 相关,例如 this但我的问题有点不同:
在我的 TableViewController 我嵌入了一个 UINavigationController 并从我的 tableView 我打开另一个 ViewController(在这个 viewController navigationController 是零)
我的 Storyboard:
奇怪的是,如果我选择 tableView 的第一行或最后一行,一切正常(navigationController 不返回 nil)但是当我选择任何其他行时它返回 nil
我在 ViewWillAppear 和 ScrollViewDidScroll 中使用导航栏:
override func viewWillAppear(animated: Bool) {
hairLine.hidden = true
self.navigationController?.navigationBar.setBackgroundImage(UIImage(), forBarMetrics: .Default)
self.navigationController?.navigationBar.shadowImage = UIImage()
self.navigationController?.navigationBar.translucent = true
self.navigationController?.view.backgroundColor = UIColor.clearColor()
self.navigationController?.navigationBar.backgroundColor = UIColor.clearColor()
self.navigationController?.navigationBar.tintColor = UIColor.blackColor()
}
有人知道这里有什么问题吗?
Best Answer-推荐答案 strong>
我认为您已经直接从原型(prototype)单元而不是 View Controller 加入了 segue。不从任何 UI 组件加入 Controller 到 Controller 之间的 segue。覆盖 prepareForSegue 方法。
关于ios - UINavigationController 返回零,我们在Stack Overflow上找到一个类似的问题:
https://stackoverflow.com/questions/38497247/
|