无法加载包含标识符的捆绑包中笔尖引用的“”图像


76

当我加载我的应用程序时,它显示一条警告消息,

“无法加载从标识符为“”的捆绑中的笔尖引用的“”图像

我搜索并确认了所有图像。但是它仍然显示警告。


我已经完成了与此相关的所有解决方案,但仍显示警告。plzzz帮助
Hilaj

1
我认为您为UIImageView设置了一个图像,但捆绑包中不存在该图像,请检查您的xib
Pravin Tate

您是否在标签栏或选定模式下使用图像?您正在使用哪个Xcode?
2015年

Answers:


51
  1. 在项目浏览器中选择您的图像。
  2. 打开文件检查器。
  3. 确保已选择目标。

将图像添加到目标


谢谢!!!!!!!!做了所有事情,直到&包括厨房水槽,但最终通过“ * .xcodeproj”->“构建阶段”->“复制捆绑资源”逐个图像地添加了图像,这要归功于xcode ...浪费了4个小时关于这个小问题...在使用makefile之前从未有过...疯狂...这正是为什么人们讨厌基于gui的构建工具...。
NpC0mpl3t3

您真棒,老板
SURESH SANKE '18

一个非常小的问题,如果没有这个答案,可能会浪费几个小时。谢谢...
Abhishek

救命!即使我已经尝试了此页面上的所有“修复”,我仍然会遇到同样的错误。我的文件名为“ landscape.png”,我使用的是Xcode10。–
Kevin

@Kevin尝试从项目中删除landscape.png,然后重命名。然后将其拖到项目中,并确保选中“如果需要,复制项目”框。然后,将其放入项目中后,确保选中“目标成员身份”框,如上面的答案所示。
Chase Roberts

44

我有同样的问题Refactor to Storyboard。显然,资产目录不传输图像参考。要修复,请参见以下内容:

您会发现您的ImageViews参考文献为空。

图像浏览

1-单击ImageView

单击图像视图

2转到实用工具栏,您会在其中看到资产图像 unknown

未知图片

3-将其更改回您的图像资产

再次选择您的图片

这应该可以解决您的错误。希望这可以帮助!


19

该错误可能有很多原因。要解决此问题,您可以按照以下给定步骤进行操作:

  1. 转到Xcode的产品菜单,选择clean
  2. 如果仍然出现错误,请从项目中删除图像,然后再次将图像添加到项目中。
  3. 在将图像添加到项目中时,请确保已在“添加到目标”中选择了项目名称。并启用“如果需要,复制项目”。

请参考下图以获得更好的理解:

第一张图片表示上传图片时,“添加到目标”下的TestTests已启用

由于上述过程,我们得到了错误,正如我们在Xcode控制台中看到的那样

图3显示了将图像/文件上传到项目中的正确方法

最终图像4th显示了输出,没有任何错误/警告


删除所有图像作为第二个选项可能听起来像是花了很多功夫,但这并不是一个解决方案。只需检查您的imageViews,其中一个或多个将显示“ Unknown Image”。
Zia

9

只需在Xcode中选择图像,然后在“目标成员身份”下右侧的文件检查器中,确保选择了您的项目。您可以做的另一件事是删除并重新插入图像,并确保选择了“如果需要复制项目”,并选择了“添加到目标”项目。


对我来说,删除den image.assets中的整个文件夹很重要。不只是删除图像。奇怪的错误...
kuzdu

7
  1. 在Xcode导航器中单击图像文件。
  2. 选择之后,转到实用程序的右侧栏(XCODE的),在文件检查器下,滚动到目标成员资格,然后选择项目目标文件。
  3. 然后再次构建并运行该项目。

5

Xcode9 beta2发行说明:

对于使用Xcode 9构建的应用程序,在iOS 10或更早版本上找不到资产目录中的Jpeg资产。用于访问图像的API调用,例如UIImage.imageNamed:返回nil。(32524123)

解决方法:使用png资源或将应用程序测试限制为运行iOS 11或更高版本的设备。

Xcode9 beta3发行说明:

资产目录中的Jpeg资产可在iOS 10或更早版本的Xcode 9构建的应用程序中找到。(32524123)


1
我在Xcode 8.3.3 / iOS 10中看到此问题。切换到PNG可以解决此问题,但会增加大小。
本·弗林

3

您可以尝试将演示图板或笔尖作为源代码打开,然后在其中“查找”图像名称,查看它是否存在但在您的项目中已经无效,可能您已删除或更改了它的名称,但现在看来无效。


对于特定的发现:image="name"image name="name"。我刚好在名为“ first”的图片上遇到此错误,并且情节firstAttribute
提要

3

我刚刚更新到XCode 9,它开始给我这个问题。我在“资产”部分中创建了一个新的图像集,并向其中添加了想要的图像,然后使用自定义名称将它们重新添加到我的标签栏图像中,效果很好。希望这可以帮助!


2

问题
在我看来,这在选项卡栏控制器上突然出现,每个选项卡带有图标。故事板仍在显示我的图像图标,并且资产以预期的名称存在。

MY FIX
在其各自的视图控制器中选择选项卡栏图标,然后像第一次一样重新分配图像。


1

这也发生在我身上。添加图像时,我所做的一切都正确,但是由于某种原因,它无法正常工作。添加后,我必须再次单击该图像,然后在“目标成员身份”下的右侧工具栏上,我注意到我的项目没有被选择,即使我在添加图像时选择了它。我在这里选择它,一切正常。


1

即使应用程序运行良好(在模拟器和设备上),我也得到了相同的错误消息(在XCode 8中)。

我发现了问题:在情节提要中,使用文档大纲窗格,单击了每个UIImage,然后在“图像视图”部分中查看了每个UIImage的属性检查器,发现一个UIImage的文件名是空白(而不是包含图片的.png文件名)。从下拉框中重新选择.png文件名可修复错误消息。


谢谢,这对我有用。我浏览了所有的UIImageViews,发现其中一个正在显示图像,但是Image字段为空。添加了它,现在可以正常工作了。
奥拉夫·高瑟克


1

我花了几个小时解决这个问题,但该线程中没有任何解决方案起作用。最后,问题是Xcode项目文件存储在Google云端硬盘文件流中。一旦将其移至本地驱动器或iCloud,它就可以正常工作。


1

查看情节提要文件,您将在任何一个imageView(如下面的屏幕快照中所示)或UIButton图像上看到一个问号图标。
只需更正它,警告就会消失。

imageView中的图像无效

希望这可以帮助


1

对于那些在开发cocoapod时遇到此错误的人

我试图使用情节提要中pod包中的图像(即.xcassets文件中的图像)。它会在情节提要中很好地显示,但是当我运行该应用程序时,它会崩溃,提示它找不到资源。

我改变了我的podspec包括s.resources以及s.resource_bundles

s.resource_bundles = {
  'SDKRes' => ['SDK/Assets/*']
}

s.resources = ['SDK/Assets/*.{xcassets}']

然后就可以从情节提要中正确加载资源


0

我的猜测是您的图片中 Project Setting->Build Phases->Copy Bundle Resources失去了参考,并显示为红色文字。从那里删除该图像,然后重新添加。

发生这种情况的原因通常是,在将图像文件添加到添加了图像而不是副本作为参考的项目中之后,重新定位了图像文件。

也许这可以解决您的问题。


0

乌鲁格。我尝试使用上述所有解决方案修复此问题,但没有任何效果。最终起作用的是:

  1. 从项目中删除图像,然后选择移至废纸rash
  2. 清洁项目
  3. 关闭并重新启动XCode
  4. 重命名您的图片文件名,以便使用其他名称之外的名称
  5. 将新图像添加到您的项目

0

我遇到了同样的问题,我通过删除文件夹并再次创建并覆盖所有图像来解决此问题,然后再次添加了引用。



0

遇到了同样的问题,这些答案对我都不起作用。相反,我重新启动了正在使用的Mac和iPhone,然后一切又开始正常运行。♂️


0

我的情况有些不同。我用的是旧的IBDesignable元素,该元素具有直接从情节提要中设置图像的某些属性。由于该元素是旧的,隐藏的和未使用的,因此它没有出现在我的资源文件夹中。

现在Xcode将无法搜索该图像,因为它不再在项目中。但是,如果您在项目内部的查找器中搜索,则会找到XIB/Storyboard其中提到的内容。从那里可以通过打开XIB或Storyboard作为源代码并进行搜索来手动找到它。找到后,请用新图像替换它们或删除未使用的元素。


0

我的情况是不同的。我还有一个资产文件夹。所以我加错了。只需删除并添加到右侧即可。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.