正如问题所暗示的那样:segue 如何创建目标控制器?具体来说,调用哪个方法?当 segue 创建他时,我想从 nib 初始化另一个 ViewController。我该如何做到这一点?
非常感谢
正如问题所暗示的那样:segue 如何创建目标控制器?具体来说,调用哪个方法?当 segue 创建他时,我想从 nib 初始化另一个 ViewController。我该如何做到这一点?
非常感谢
简短的回答:initWithCoder:
被调用。
更长的答案(来自苹果的文档UIViewController
):
如果您的应用程序使用情节提要来定义视图控制器及其关联视图,则您的应用程序永远不会直接初始化该类的对象。相反,视图控制器要么由故事板实例化——要么在触发 segue 时由 iOS 自动实例化,要么在您的应用程序调用故事板对象的 instantiateViewControllerWithIdentifier: 方法时以编程方式实例化。当从故事板实例化视图控制器时,iOS 通过调用它的 initWithCoder: 方法来初始化新的视图控制器。iOS 自动将 nibName 属性设置为存储在故事板中的 nib 文件。