segue 如何创建目标 ViewController?

Posted

技术标签:

【中文标题】segue 如何创建目标 ViewController?【英文标题】:How does a segue create the destination ViewController? 【发布时间】:2012-05-15 19:56:35 【问题描述】:

正如问题所暗示的那样:segue 如何创建目标控制器?具体来说,调用哪个方法?当 segue 创建他时,我想从 nib 初始化另一个 ViewController。我该如何做到这一点?

非常感谢

【问题讨论】:

【参考方案1】:

简答:initWithCoder: 被调用。

更长的答案(from apple's docs on UIViewController):

如果您的应用使用情节提要来定义视图控制器及其 关联视图,您的应用从不初始化该类的对象 直接地。相反,视图控制器要么由 故事板——在触发 segue 时由 ios 自动执行,或者 当您的应用程序调用情节提要对象的 instanceViewControllerWithIdentifier: 方法。当实例化一个 来自故事板的视图控制器,iOS 初始化新视图 通过调用它的 initWithCoder: 方法来代替控制器。 iOS 自动将 nibName 属性设置为存储在其中的 nib 文件 故事板。

【讨论】:

以上是关于segue 如何创建目标 ViewController?的主要内容,如果未能解决你的问题,请参考以下文章

创建一个 segue 并通过 Swift 在两个视图控制器之间附加它?

对 segue 源视图控制器的引用

如何在目标 c 中的按钮 Segue 后导航回来

如何将 indexPath 从 segue 传递到目标视图?

如何在准备中的 switch 语句中使用可选绑定(segue :)

swift 4 - segue 动画完成后如何在目标视图控制器中运行代码?