iOS应用程序崩溃,原因是“无法在包中加载NIB”

6
当我运行模拟器时,出现了崩溃,并且我不知道为什么会出现如下信息: “由于未捕获的异常 'NSInternalInconsistencyException' 终止应用程序,原因是:无法在包中加载 NIB:名为 'ViewController_iPhone' 的 'NSBundle (loaded)'"。 有人能帮忙吗?

错误信息显示了问题所在 无法在包中加载 NIB。请确保 NIB 文件存在并已添加到目标中。 - rckoenes
2个回答

8

你确定项目中已经添加了"ViewController_iPhone.xib"文件吗?

如果没有,请将其添加到您的项目/目标中,或(如果已经存在)检查导致崩溃的语句中使用的nib名称,或者在启动时发生崩溃时检查您的info.plist文件。

如果一切都正确,请清理项目并重新构建。


我没有"ViewController_iPhone.xib"文件,我有一个名为"ViewController.xib"的文件,请问我应该在哪里检查这个崩溃? - JaNa Saadeddin
是的,这是创建项目时出现的主要界面。 - JaNa Saadeddin
谢谢,现在它可以工作了,但仍然因为其他原因崩溃,我正在努力查找原因是什么。 - JaNa Saadeddin
原因:'[<ViewController 0x6c14970> setValue:forUndefinedKey:]:此类不支持键值编码,无法为键pickerPressed设置值。' - JaNa Saadeddin
好的,现在你的nib文件已经被加载了。这解决了你最初的问题。只是,你的nib和控制器不一致:似乎你在nib中定义了一个pickerPressed,但是你的控制器没有这样的属性。检查你的nib文件中所有的连接,寻找“悬空”的连接并修复它们。 - sergio
显示剩余3条评论

1

当我在iOS7上工作时,在iOS6上运行时崩溃了,我遇到了同样的问题。

解决方法:

如果您正在使用xCode5,则应转到Xib文件并将“Interface Builder Document”更改为查看iOS6.1或更早版本,或将“opens in” xcode版本更改为4.6而不是5.0

这对我解决了问题。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接