Skip to main content
 首页 » 操作系统

ios之无法将 PNG 图像加载为 UIImage

2024年01月01日40rubylouvre

我正在尝试将位于我的 XCode 项目中的 .PNG 图像加载为 UIImage - 但是采用文件名的 UIImage 的构造函数返回 nil.

请看我的设置截图:

这里有一些细节:

  • 项目在 Swift 中
  • 我正在全局变量中构造UIImage(懒惰地)
  • 问题存在于模拟器和设备(iPhone 5S)上
  • 我多次添加相同的图像但名称不同,以确保命名不正确不是原因(查看左侧红色矩形中的所有名称)
  • 所有图像都添加到 EasyTypeShared 目标,这是一个嵌入到 runeable EasyType 项目中的库项目。
  • 我没有执行任何额外步骤 - 只是将图像文件添加到我的工作区(和 EasyTypeShared 目标)并运行应用程序

编辑:根据this blog原因可能是工作区设置 - 更准确地说是框架正在加载图像。不确定,但由于缺乏更好的想法,我会遵循这条轨道。如果您能对此事有所了解,我将非常感谢任何想法。

请您参考如下方法:

问题是由于从资源加载图像的代码驻留在框架中。主包中不包含框架的资源,需要使用相应的包。工作代码:

private let imagePlaceholder = UIImage(named: "ImagePlaceholder.png", inBundle: NSBundle(forClass: CarretMoveController.self)