从 NIB 错误加载 ViewController [重复]

Posted

技术标签:

【中文标题】从 NIB 错误加载 ViewController [重复]【英文标题】:Loading a ViewController from NIB error [duplicate] 【发布时间】:2013-06-10 06:26:49 【问题描述】:

我是 Xcode 的新手,我尝试创建一个简单的程序,代码中没有问题,它可以正常构建,但是 ios 模拟器只显示黑屏并将我重定向到 AppDelegate。 h 文件,它指出了这一行的错误...

#import <UIKit/UIKit.h>

@class ViewController;

@interface AppDelegate : UIResponder <UIApplicationDelegate>

@property (strong, nonatomic) UIWindow *window; // Thread 1. Breakpoint 1.2

@property (strong, nonatomic) ViewController *viewController;

@end

谁能解释一下这个错误的含义?

错误信息...

如你所说,我已经启用了 NSZombie,并且我遇到了 Thread 1.signal SIGABRT 错误。而且我在 XCode 下方也显示了这个错误。

由于未捕获的异常“NSInternalInconsistencyException”而终止应用程序,原因:“-[UIViewController _loadViewFromNibNamed:bundle:] 加载了“ViewController”笔尖,但未设置视图出口。'

【问题讨论】:

你能分享一下确切的错误声明吗 就是这样。线程1.断点1.2如上代码所示。 启用NSZombie 并重新运行应用程序。将显示真实的细节 我已经启用了 NSZombie,正如你所说,我遇到了 Thread 1.signal SIGABRT 错误。而且我在 XCode 下方也显示了此错误。由于未捕获的异常“NSInternalInconsistencyException”而终止应用程序,原因:'-[UIViewController _loadViewFromNibNamed:bundle:] 加载了“ViewController”笔尖,但未设置视图出口。 ' 【参考方案1】:

错误消息显示您有一个包含视图控制器的 nib 文件,但您尚未将“文件所有者”的类设置为 UIViewController 子类的正确类。

在 nib 文件中,选择“文件的所有者”并在属性面板中设置类(那里的顶部文本字段)。

将其从“UIViewController”更改为“ViewController”。

然后确保视图连接正确。

【讨论】:

【参考方案2】:

该错误意味着在您的 xib 文件中,文件所有者的(您应该将其设置为 ViewControllerview 出口未设置。您需要将 view 插座连接到您的 xib 中的视图。

【讨论】:

以上是关于从 NIB 错误加载 ViewController [重复]的主要内容,如果未能解决你的问题,请参考以下文章

将另一个 nib 加载到 viewController

整理ViewController的生命周期和加载过程

从框架加载 nib 文件

为 StoryBoard 中 ViewController 中使用的 UIView 加载 Nib

如何在 ViewController 中多次使用自定义 nib 视图

从 Cocoa 中的其他 nib(即 Interface Builder)加载 nib