无法从按钮转到UINavigationController

时间:2017-09-20 16:09:07

标签: ios swift

我在尝试从按钮执行segue到UINavigatinController时遇到错误:

  

致命错误:在解包可选值时意外发现nil

@IBAction func displayFootball(_ sender: Any) {
        self.configToSend = self.configFootball
        performSegue(withIdentifier: "navSegue", sender: self)
}

override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
    if segue.identifier == "navSegue" {
        let navVC = segue.destination as! UINavigationController
        let mainVC = navVC.topViewController as! MainViewController //<--This is where the error occurs

        mainVC.config = self.configToSend
    }
}

enter image description here

第一个segue称为'navSegue',第二个是未命名的。两者都直接从一个视图控制器转到下一个(而不是从按钮本身)。

enter image description here

navVC不是零,顺便说一句。

任何人都知道为什么会这样吗?谢谢。

1 个答案:

答案 0 :(得分:3)

要实现此目的,请尝试使用:

select . . . 
from ps_order_detail od join
     ps_orders o
     using (id_order) join
     ps_customer c
     using (id_customer) join
     ps_carrier ca
     using (id_carrier)

编辑:

let navVC = segue.destination as? UINavigationController (navVC.viewControllers[0] as? YourVCClass).property = dataToSend 数组上的nil问题可能是因为你没有从NavigationController到他的第一个ViewController的关系。

segue的图标应该是这样的: