NSInternalInconsistencyException 无法加载 nib ind 包

Posted

技术标签:

【中文标题】NSInternalInconsistencyException 无法加载 nib ind 包【英文标题】:NSInternalInconsistencyException Could not load nib ind bundle 【发布时间】:2011-03-23 05:09:56 【问题描述】:

我正在为 iPad 开发一个应用程序。该应用程序具有以下详细信息:

基础 SDK:4.2 部署目标:3.2

该应用程序是一个游戏应用程序,它有 10 个回合。

在每一轮中,我加载 6 个控制器,并且在每一轮完成后再次开始相同的循环。

该应用程序在 4 轮之前都可以正常工作,但在第 4 轮结束时,由于以下错误而崩溃:

“:”

我已经检查了所有解决方案,例如检查 nib 文件名、检查 nib 文件路径。 Nib 文件名和 nib 文件路径都正确,目标也正确,但仍然崩溃。

对此的任何帮助将不胜感激。

谢谢,

夏姆

【问题讨论】:

什么解决了您的问题?我面临同样的问题。和你一样,我检查了所有常用的解决方案。 【参考方案1】:

在 xcode 中右键单击您的 nib 文件并确保其类型为“file.xib”。

【讨论】:

非常感谢您!我有同样的问题,我的文件类型是“sourcecode.xib”。将其更改为“file.xib”修复了它。我不知道为什么,但我很感激!【参考方案2】:

我也遇到了这个问题,就我而言,原因是我的项目没有本地化为意大利语,但应用程序在“it”设置下运行。

模拟器默认将英语作为区域设置,一切正常,而实际设备具有意大利语设置,因此在尝试加载 RootViewController 时应用程序立即崩溃,因为它正在寻找它的意大利语版本。

在 XCode 中,我向 RootViewController 添加了一个意大利语本地化版本(现在我看到它下面有两个条目,一个是默认创建的英语和意大利语)。请注意,您不需要在视图中进行真正的翻译,只需创建它并保留为默认值即可。 Xcode 从原始视图中复制所有标签和文本,您暂时保持原样。

您必须为项目中的每个视图控制器执行此操作。有关国际化和本地化的说明,请参阅 Apple 文档 here。

作为一种解决方法,有些人可能更喜欢在执行测试时将设备区域设置更改为英语...

【讨论】:

以上是关于NSInternalInconsistencyException 无法加载 nib ind 包的主要内容,如果未能解决你的问题,请参考以下文章

无法在包中加载 Nib - 错误的 nibname 错误