无法加载带有标识符的包中的nib引用的图像

时间:2010-12-17 05:46:21

标签: ios iphone ipad uiimageview uiimage

我有一个iPad申请。ViewContrtoller.xib中有一个UIImageViewUIImage的{​​{1}}通过UIImageView设置。当我在模拟器中运行应用程序时,一切都很好。但是当我尝试在Interface Builder中运行它时,iPad未加载。我得到的信息是:

  

HexaPuzzle1.0 [3259:207]无法加载标识符为“com.yourcompany.HexaPuzzle1-0”的包中从nib引用的“start.png”图像       2010-12-17 10:57:27.221 HexaPuzzle1.0 [3259:207] HexaPuzzle已装载

任何帮助都将受到赞赏,对我来说将是一个很大的帮助。

15 个答案:

答案 0 :(得分:25)

问题已得到纠正。 问题出在图像格式上。当图像被编辑并保存为 PNG-24 时,一切都很顺利。 该应用程序现在可以在模拟器和设备中顺利运行。

感谢所有提出解决方案并试图帮助我的朋友。

此致 Rupesh R Menon

答案 1 :(得分:12)

我知道这已经很晚了,但这是一个在Xcode 5中也有效的解决方案,因此对将来遇到此问题的人可能会有用。

我在网上看到过很多像这样的问题,但似乎都没有一个明确的答案。据我所知,这是解决这个问题的方法:

  • 转到Xcode中的图像(无需重新添加或重新生成 图像)
  • 点击“显示文件检查器”
  • 确保选中“目标成员资格”类别中的复选框。不必检查测试复选框以使您的应用加载图像。

目标成员资格标签如下所示:

enter image description here

如果已经是这种情况,您正在使用损坏或损坏的文件。要排除这一点,请检查另一个应用程序(如photoshop)是否可以打开您的图像。

这应该做到,希望它有所帮助!

答案 2 :(得分:5)

start.png 文件拖入项目时,您是否选中了此选项?

alt text

答案 3 :(得分:5)

升级到Xcode 7 / iOS 9并打开现有项目后,我在模拟器中收到此错误。在XCAssets包中存在并正确命名图像。

原来问题在于XCAssets包中的参数。

Render As默认更改为原始图片解决了问题:

enter image description here

答案 4 :(得分:3)

我之前遇到过同样的问题。 png文件格式不正确。尝试重新生成png图像文件,问题就解决了。

答案 5 :(得分:1)

以上都没有为我工作,我收到的消息是"无法加载"(null)"图像参考...这意味着我无法查找图像。很沮丧。最后,它成了一个试错练习,遍历每个xib和故事板,寻找潜在的冲突。我终于找到了 - 我已经指定了一个"选择的图像"对于不需要的标签栏项目。一旦我摆脱了问题就消失了。

答案 6 :(得分:0)

这些都不适合我。我在放置图片的项目中创建了一个新文件夹。这对我有用。

答案 7 :(得分:0)

当我将图像导入项目时,将“添加文件夹引用...”更改为“添加组...”时,此问题已得到解决。我更喜欢有实时更新的文件夹,但至少现在可以使用。

答案 8 :(得分:0)

在XIB上有一个图像(在代码中被正确的图像替换)。完成此XIB后,我重命名了图像。所以XIB现在引用了一个不存在的图像。

答案 9 :(得分:0)

此问题还有另一个可能的原因:如果您升级到XCode 5并同时使用图像资产目录和复制到项目的“普通”图像(就像之前的XCode 5一样)。如果你有相同名称的图像(例如“dog.png”和一个名为“dog”的图像集),它可能在你的故事板和模拟器中工作,但你会在真实设备上运行时得到这个消息(图像不会显示。)

答案 10 :(得分:0)

尝试将图像直接移动到Resources目录(不在子文件夹中)

答案 11 :(得分:0)

确保资源不会太大而无法处理。

答案 12 :(得分:0)

如果您收到包含图片名称的错误消息,则可以在项目中进行搜索,xCode会立即显示UIImageView内部错误图片UIStoryboard:< / p>

enter image description here

答案 13 :(得分:0)

确保它包含在您的目标会员

  1. 选择你的&#34; Images.xcassets&#34;文件Inspector
  2. 中的文件
  3. 打开文件检查器(cmd + opt + 1)
  4. 选择目标会员资格(通常为第1行)

答案 14 :(得分:0)

由于某种原因,直到将图像放入Assets.xcassets中之前,我一直报错