【问题标题】:Mysteriously missing PNG resource in IOS appIOS应用程序中神秘地丢失了PNG资源
【发布时间】:2014-04-17 19:29:06
【问题描述】:

我最近添加了一张图片(png 文件)作为我的应用程序的资源。我正在加载图像:

UIImage* img = [UIImage imagedNamed:@"name.png"];

当我在 IOS 模拟器中运行应用程序时,它会正确加载图像。我已经尝试过 iPad、iPad Retina 和 iPad Retina 64 位模拟器——它们都可以正确加载。但是当我在 iPad Air 上运行应用程序时,对 UIImage.imageNamed 的调用返回 null。

关于如何将图像添加到项目中,我有什么遗漏吗?我原以为如果有问题,我在模拟器中运行时也应该出现。

谢谢。

  • 戴夫

【问题讨论】:

  • 请勿在名称中使用“.png”。你还有 x2(视网膜)版本的图像吗?
  • 您是否检查过该图像已添加到项目目标中?选择图像并在检查器的“目标成员资格”下选择您的项目。
  • 您确定图像包含在应用程序目标中吗? Xcode 不会删除不再包含的资源,那么您是否尝试过从模拟器中删除应用程序并重新运行它?模拟器(可能取决于您的 OSX 文件系统)不区分大小写,但实时设备是。
  • 检查文件名的大小写 - 模拟器并不关心(因为它在 OS X 上运行),一个合适的设备会。
  • 谢谢 Rich - 你是对的。实际上,直到我在下面添加自己的答案之前,我才看到您的评论。由于某种原因,我没有收到关于我的主题帖子的通知,我没有意识到有人回复了。

标签: ios uiimage


【解决方案1】:

没关系 - 我找到了问题所在。显然,资源名称在设备上区分大小写,但在模拟器中不区分大小写。将资源的字符串名称修复为与实际文件名相同的大小写解决了问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-11-01
    • 1970-01-01
    • 1970-01-01
    • 2011-08-05
    • 2015-05-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多