无法访问资产目录中的图像
Posted
技术标签:
【中文标题】无法访问资产目录中的图像【英文标题】:Image from asset catalog not accessible 【发布时间】:2018-02-27 09:48:12 【问题描述】:在我的项目中,我有多个资产目录,其中一个名为 images.xcassets
。
我可以使用UIImage(named: "image.png")
或#imageLiteral(resourceName: "image.png")
访问所述资产目录中的所有图像(带有和,没有文件扩展名.png
)。
问题
现在,尝试访问资源 image2.png
在 ios 11.2 iPad 10.5" 模拟器上工作得很好。但是,完全相同的构建在使用 iOS 11.2 iPad 12.9"(第二代)模拟器时会崩溃,并显示以下“消息":
线程 1:EXC_BAD_INSTRUCTION(代码=EXC_I386_INVOP,子代码=0x0)
这个问题刚刚出现,在今天之前我总是可以访问图像。我什么都没碰过……
我尝试过的
目标成员设置为项目的目标 从 Build Phases 中的 Copy Bundle Resources 中删除了资产目录 清理并重建项目 从目录中删除image2.png
并将其添加回来
删除了整个资产目录并将其重新添加
从 12.9" 模拟器中删除应用并重新安装
退出并重新打开 Xcode 和模拟器
知道为什么这个特定资源无法再访问了吗?
注意事项:
到目前为止,我在使用真实设备时没有遇到此错误(使用 iPad Air 2 和 iPad Pro 1st Gen. 测试)【问题讨论】:
检查目标成员资格。 正如我的帖子中所述,我已经这样做了。此外,如果未设置目标,我将无法访问目录中的任何其他图像。 【参考方案1】:Has to do with the color space apparently。
我能够在 Photoshop 中“保存为网络”并将图像转换为 sRGB 以获得不会在 iPad Pro 12.9" 第二代模拟器中崩溃的图像文件。
【讨论】:
以上是关于无法访问资产目录中的图像的主要内容,如果未能解决你的问题,请参考以下文章
Pyramid 无法访问静态资产(既不是 .jpg 图像也不是 .js 文件)