gpt4 book ai didi

iphone - 加载 View 时获取 NULL IBOutlets 的可能性是什么.. IOS

转载 作者:行者123 更新时间:2023-11-28 22:43:36 27 4
gpt4 key购买 nike

我一直在做IOS应用。在我只有一个项目,其中所有源代码都在该设置中正确加载应用程序之前,现在我已经将其拆分为多个项目。之后我现在面临一个问题......在 ViewDidLoad 中,按钮的 IBOutlet 都为零值, View 也加载黑色。我无法猜测是什么问题。关于什么可能导致这种情况的任何想法......

我已经像这样加载了我的 View ...

 main =[[main_page_controller alloc] init];

if (main != NULL)
[root.navigationController pushViewController:main animated:YES];

我不确定我需要在此处发布代码的哪一部分以使问题更容易理解...请分享您的建议..

编辑:我运行了我的旧项目,然后尝试成功启动我的新设置应用程序。我从设备中删除了应用程序,并仅使用新设置加载,问题再次出现。那么旧设置中有什么?我在新...中缺少什么????

最佳答案

引用the documentation

To initialize your view controller object using a nib, you use the initWithNibName:bundle: method to specify the nib file used by the view controller. Then, when the view controller needs to load its views, it automatically creates and configures the views using the information stored in the nib file.

在初始化 View Controller 时,如果您正在为 View 使用 .xib 文件,则需要调用 initWithNibName:bundle:。这意味着它将使用 xib 文件在 loadView 中创建 View 。目前,您只是在使用 init,它将创建一个空白的 UIViewController 对象。

所以在这种情况下,您的代码将是(假设 .xib 在主包中称为“MainViewControllerView.xib”):

main =[[main_page_controller alloc] initWithNibName:@"MainViewControllerView" bundle:nil];
if (main) {
[root.navigationController pushViewController:main animated:YES];
}

同时检查您的 .xib 文件是否所有 IBOutlet 都连接到您想要的内容。

关于iphone - 加载 View 时获取 NULL IBOutlets 的可能性是什么.. IOS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13817894/

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