gpt4 book ai didi

ios - 从 Storyboard 实例化 View Controller 与创建新实例

转载 作者:IT老高 更新时间:2023-10-28 11:45:15 26 4
gpt4 key购买 nike

从 Storyboard 实例化 View Controller 和创建它的新实例之间的功能区别是什么?例如:

#import "SomeViewController.h"

...

SomeViewController *someViewController = [SomeViewController new];

#import "SomeViewController.h"

...

UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Main" bundle: nil];

SomeViewController *someViewController = [storyboard instantiateViewControllerWithIdentifier:@"SomeViewController"];

在任何一种情况下,someViewController 是否实际上是同一件事?

最佳答案

主要区别在于 UIViewController 的 subview 如何被实例化。

在第二种情况下,您在 Storyboard 中创建的所有 View 都将自动为您实例化,并且所有导出和操作都将按照您在 Storyboard 中指定的方式进行设置。

在第一种情况下,这一切都没有发生;你只得到原始对象。您需要分配和实例化所有 subview ,使用约束或其他方式布置它们,并自己连接所有导出和操作。 Apple recommends通过覆盖 UIViewControllerloadView 方法来做到这一点。

关于ios - 从 Storyboard 实例化 View Controller 与创建新实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26131693/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com