Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/blackberry/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Cocoa touch 由于未捕获异常而终止应用程序';n内部一致性异常';,原因:'-[UIViewController loadView]已加载nib,但未设置任何视图_Cocoa Touch_Interface Builder - Fatal编程技术网

Cocoa touch 由于未捕获异常而终止应用程序';n内部一致性异常';,原因:'-[UIViewController loadView]已加载nib,但未设置任何视图

Cocoa touch 由于未捕获异常而终止应用程序';n内部一致性异常';,原因:'-[UIViewController loadView]已加载nib,但未设置任何视图,cocoa-touch,interface-builder,Cocoa Touch,Interface Builder,根据我对SDK的理解,当IB中的绑定不正确时,会引发此异常。但在我的例子中,视图在前两次加载时都很好。然后,我使用NavigationController从视图向后移动 第三次尝试打开视图时,出现此异常。它在前两次打开时都是正确的,这意味着绑定是正确的,视图也很好!但为什么第三次失败呢 有什么建议吗? 谢谢 我正在调用-initWithNibName:bundle:来初始化在IB中创建的视图。而不是调用-loadView方法 它没有收集垃圾。好了,iPhone SDK中没有垃圾收集,我们需要显

根据我对SDK的理解,当IB中的绑定不正确时,会引发此异常。但在我的例子中,视图在前两次加载时都很好。然后,我使用NavigationController从视图向后移动

第三次尝试打开视图时,出现此异常。它在前两次打开时都是正确的,这意味着绑定是正确的,视图也很好!但为什么第三次失败呢

有什么建议吗? 谢谢

我正在调用
-initWithNibName:bundle:
来初始化在IB中创建的视图。而不是调用
-loadView
方法



它没有收集垃圾。好了,iPhone SDK中没有垃圾收集,我们需要显式地解除锁定。

视图对象可能超出范围,正在进行垃圾收集。

您可能内存不足,这迫使系统向实例化的视图控制器发送内存不足的消息。-didReceiveMemoryWarning的默认实现清除视图成员变量。理论上,下一次需要该视图时,应该重新实例化它,但您可能已经覆盖了阻止它的内容

看来您还没有将视图绑定到它的文件所有者


要修复此问题,请打开您在此ViewController中使用的xib。右键单击主视图,然后将此视图绑定到文件Owener的view属性。

iPhone平台上没有垃圾收集(只有最新版本的桌面objective-c运行时添加了垃圾收集),是否会在视图上调用initWithNib?您是否直接调用loadView而不是通过view属性延迟加载它?您正在调用视图中的Super、loadView和viewDidLoad吗?您可能希望使用术语“连接”而不是“绑定”。在Cocoa术语中,“绑定”具有特定含义,不能与“连接”互换。谢谢!我已经找了一段时间了。此外,您可能需要将文件的所有者设置为您的视图控制器类(我总是忘记这样做)。请参见中所示的答案