loaded some nib but the view outlet was not set

链接地址:http://www.cnblogs.com/TivonStone/archive/2012/04/20/2460116.html

当使用 initWithNibName 函数, 并使用 由nib文件生成的ViewController 的view属性时候,遇到这个问题。

//load loc.xib

UIViewController * UIVC = [[UIViewController alloc] initWithNibName:@"loc" bundle:nil];

[self.view addSubview:UIVC.view];

[UIVC release];

NibName[2203:207] *** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: '-[UIViewController _loadViewFromNibNamed:bundle:] loaded the "loc" nib but the view outlet was not set.'

表面意思是指 我们加载的nib文件,"view" 属性值没有进行设置.

这里的实际情况: 不是所生成的 VC 的view属性值为 nil,  而是所生成的 VC 没有 view 这个属性。 我们使用的是UIViewController 定义的VC, 为什么 VC (View Controller) 会没有 view 属性呢?

(多么具有逻辑性的表述都不如一次成功的完整操作,begin :)

解决方案:

1. 点击我们要加载的 xib 文件

2. 在右边选中 File's Owner

loaded some nib but the view outlet was not set

3. 在 File's Owner 的 loaded some nib but the view outlet was not set 选项卡的“Custom Class” 属性设置中,将 Class 的值改成对应的 VC, 这里改成 UIViewController,

loaded some nib but the view outlet was not set

loaded some nib but the view outlet was not set

4. 这时候,在File's Owner 的  loaded some nib but the view outlet was not set选项卡中, 就 会出现“待连接设置” 的 view 属性, 也即我们的编译器 告诉我们的 the view outlet was not set  中的 view。当 File's Owner 的 class 为 NSObject 时候,是没有 view 属性的。

loaded some nib but the view outlet was not set

连接 view 属性,

loaded some nib but the view outlet was not set

5. win+r, OK.

作者:石世特 
出处:http://www.cnblogs.com/TivonStone/ 
希望本文对你有所帮助,想转随便转,心情好的话给我的文章留个链接.o(. .)o

上一篇:YYCache 源码分析(一)


下一篇:回退符\b