gpt4 book ai didi

iphone - 如何关联 View Controller 和xib文件

转载 作者:行者123 更新时间:2023-12-03 20:53:31 27 4
gpt4 key购买 nike

当我使用“创建 xib 文件”选项从“新文件...”向导创建 uiviewcontroller 时,我只需通过 SomeViewController *view = [[SomeViewController alloc] init] 即可加载它 。但是,当我重命名 xib 文件名时,即使 xib 中的文件所有者仍然是正确的 View Controller ,此代码也会停止工作。

我发现只能通过调用initWithNib来获取 View 。我只是想知道什么将 xib 与场景背后的 View Controller 链接起来?重命名文件后我仍然可以使用 init 来加载 xib 吗?

问候

狮子座

最佳答案

I can load it by just SomeViewController *view = [[SomeViewController alloc] init].

你可以,但(IMO)你不应该这样做。 UIViewController 的指定初始值设定项是 -initWithNibName:bundle:。您可以在自己的 View Controller 中实现一个 -init 方法,该方法调用 [super initWithNibName:nil bundle:nil],但我认为如果您坚持使用,代码会更清晰同名。

此外,请确保您阅读了 UIViewController 的文档,特别是讨论,其中说道:

If you specify nil for the nibName parameter, you must either override the loadView method and create your views there or you must provide a nib file in your bundle whose name (without the .nib extension) matches the name of your view controller class.

这就是为什么 View Controller 将加载与 View Controller 的类同名的 .xib 文件(或 -nibName 方法返回的名称,如下面进一步解释的)文档)。

简而言之,UIViewController 的功能与文档完全一致。

关于iphone - 如何关联 View Controller 和xib文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7624108/

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