从另一个情节提要中显示视图控制器

时间:2018-07-04 13:05:13

标签: ios swift uiviewcontroller uistoryboard

index.swift

func didReceiveNewSession(_ session: QBRTCSession, userInfo: [String : String]? = nil) {
    print("Receive")
    let mainStoryboard = UIStoryboard(name: "Main", bundle: nil)
    let goController = mainStoryboard.instantiateViewController(withIdentifier: "call") as! call
    self.present(goController, animated: true)
}

如果我在index.swift中并且收到会话,请为我打印Receive并转到call.swift

但是如果在加载index.swift之后我转到page.swift,如果接收会话,则打印Receive但不要转到call.swift并停留在page.swift

我想在present之后的任何地方去call.swift

1 个答案:

答案 0 :(得分:1)

  • 打开您的第一个情节提要板并创建一个情节提要板参考 enter image description here

  • 在“ Storyboard”属性中输入第二个故事板的名称,并在新创建的引用的“ Reference ID”属性中输入目标ViewController的引用ID。 (参考ID等同于目标ViewController的情节提要ID)

    enter image description here

  • 创建一个从源ViewController到新创建的Storyboard Reference的序列。确保segue具有标识符。

  • 在您的代码中像这样执行segue

func didReceiveNewSession(_ session: QBRTCSession, userInfo: [String : String]? = nil) {
    print("Receive")
    self.performSegue(withIdentifier: "mySegue", sender: self)
}

贷记https://stackoverflow.com/a/33753164/7990095