我创建的应用程序不使用故事板,在我的应用程序的这一部分中,我只需要以编程方式创建从ThirdViewController
到FirstViewController
的展开segue。我知道如何使用sotorybard,但无法找到任何解决方案如何以编程方式。任何sugestions?
答案 0 :(得分:3)
您无法在没有故事板的情况下创建实际的 segue ,但您可以通过在popToViewController
上调用navigationController
来执行相应的操作。以下示例连接到一个按钮,以便从FirstViewController
返回ThirdViewController
:
@IBAction func goBackToFirstVC(sender: UIButton) {
guard let controllers = navigationController?.viewControllers else { return }
let count = controllers.count
if count > 2 {
// Third from the last is the viewController we want
if let firstVC = controllers[count - 3] as? FirstViewController {
// pass back some data
firstVC.someProperty = someData
firstVC.someOtherProperty = moreData
navigationController?.popToViewController(firstVC, animated: true)
}
}
}
在覆盖viewWillAppear
时,您可以根据传回的数据进行操作。