【发布时间】:2015-04-05 20:49:17
【问题描述】:
我正在尝试将位于我的 XCode 项目中的 .PNG 图像加载为 UIImage - 但采用文件名的 UIImage 的构造函数返回 nil。
请查看我的设置截图:
这里有一些细节:
- 项目在 Swift 中
- 我正在全局变量中构造
UIImage(懒惰地) - 模拟器和设备 (iPhone 5S) 上存在问题
- 我已经多次添加同一张图片,但名称不同,以确保不是错误命名的原因(请参阅左侧红色矩形中的所有名称)
- 所有图片都添加到
EasyTypeShared目标,这是一个嵌入runeableEasyType项目的库项目。 - 我没有执行任何附加步骤 - 只是将图像文件添加到我的工作区(以及
EasyTypeShared目标)并运行应用程序
编辑:根据this blog,原因可能是工作区设置 - 更准确地说是框架正在加载图像。不确定,但由于缺乏更好的想法,我会遵循这条路线。如果您能对此事有所了解,我将非常感谢您提出任何想法。
【问题讨论】:
-
仅仅因为你可以在 Xcode 中看到文件并不意味着它在你的包中。
-
@HotLicks 我需要做什么才能将它添加到捆绑包中?我认为使用这个特定的
UIImage构造函数不需要额外的步骤(比如将其添加到包中)。 -
选择图像并确保图像在文件检查器中选择了“目标成员”。
-
只需添加一个资产目录并将您的图像放在那里
-
如图所示,图像文件有一些奇怪的名称。您至少需要:ImagePlaceholder.png 和 ImagePlaceholder@2x.png(如果您打算使用 iPhone 6Plus,还可能需要 ImagePlaceholder@3x.png)。确保文件不在真实文件夹中(库是真实文件夹吗?),而不是在文件资源管理器中也显示为文件夹的分组