添加了新目标:无法在bundle中加载NIB(NSInternalInconsistencyException)

时间:2014-01-24 12:47:06

标签: ios objective-c xcode nib

我正在尝试在Xcode中添加一个新的构建目标,到目前为止一切都很顺利 - 或者我至少能够弄清楚为什么东西会破坏/不编译。

然而,现在,我被卡住了。使用新目标构建和启动应用程序时,应用程序失败并显示:

*由于未捕获的异常'NSInternalInconsistencyException'而终止应用程序,原因:'无法在bundle中加载NIB:'NSBundle(已加载)',名称为'Valider1'' * 第一次抛出调用堆栈: (0x2f71be83 0x39a7c6c7 0x2f71bdc5 0x321ff391 0x321610fb 0x31fc2b59 0x31ea479d 0x31f4f895 0x31f4f7ab 0x31f4ed89 0x31f4eab1 0x31f4e821 0x31f4e7b9 0x31ea0353 0x31b26943 0x31b22167 0x31b21ff9 0x31b21a0d 0x31b2181f 0x31f1fa3b 0x31f0aedf 0x31ea5a07 0x31ea4cfd 0x31f0a321 0x3438476d 0x34384357 0x2f6e6777 0x2f6e6713 0x2f6e4edf 0x2f64f471 0x2f64f253 0x31f095c3 0x31f04845 0xcd059 0x39f75ab7) libc ++ abi.dylib:以NSException类型的未捕获异常终止

现在,我已经搜索了2个小时,并提出了很多结果和建议,但没有一个解决了我的问题。

原始构建目标工作正常,我正在为两个目标使用相同的应用程序委托文件。

这是我到目前为止所尝试的内容:

  • 尝试过模拟器/真实设备
  • 仔细检查“Valider1”是否在“编译来源”
  • 仔细检查“复制包资源”包含我的“MainWindow.xib”(这是用于“Valider1”的笔尖
  • 仔细检查“Valider1”是否正确写入
  • 清理项目100次
  • 验证Valider.m和“MainWindow.xib”是否已在目标成员资格中检查新目标
  • .plist文件,构建设置等都与原始目标和工作目标相同

请那么,告诉我我做错了什么或错过了什么!

编辑: 我这样称我的笔尖:

Valider1 *validerVC = [[Valider1 alloc] initWithNibName:@"Valider1" bundle:nil mode:ny_mode];

validerVC.delegate = self;

使用原始目标时效果很好。

编辑2: 我尝试从我的项目中使用另一个笔尖,但仍然是同样的错误。 看起来这些笔尖没有被复制到新的目标应用程序,但我不明白为什么:/

1 个答案:

答案 0 :(得分:0)

删除并重新添加.xib文件到Copy Bundle Resources

  1. 转到您的项目设置。
  2. 选择目标。
  3. 点击Build Phases。
  4. 向下滚动到Copy Bundle Resources并展开该部分。
  5. 检查此列表中是否存在.xib文件 - >然后将其删除。
  6. 现在,通过单击加号按钮重新添加.xib文件,然后找到该文件。
  7. 它帮助了我,我希望它对你有所帮助!