【发布时间】: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. 测试)
【问题讨论】:
-
检查目标成员资格。
-
正如我的帖子中所述,我已经这样做了。此外,如果未设置目标,我将无法访问目录中的任何其他图像。
标签: xcode asset-catalog