【发布时间】:2014-09-17 07:54:56
【问题描述】:
在之前的 iOS SDK 中,[UIImage imageNamed:] 可以在不给出文件扩展名的情况下自动确定要加载的图片,例如:
[ivTest setImage:[UIImage imageNamed:@"testImage"]];
它将搜索要加载的适当图像(即testImage.jpg 和testImage@2x.jpg)。但是对于 iOS 8,它有时无法识别要加载的正确图像,而只是返回 null。
我必须指定扩展名:
[ivTest setImage:[UIImage imageNamed:@"testImage.jpg"]];
但这仅在极少数情况下才会发生。
鉴于我在项目中只有以下图片:
- testImage.jpg
- testImage@2x.jpg
没有其他名称相似的图片。我怎样才能防止这种情况?我应该为我所有的imageNamed: 指定扩展名吗?
【问题讨论】:
-
图片是否在 .xcassets 中?
-
将图片放在 images.xcassets 中。
-
是的,我认为您必须为所有 JPEG 指定文件扩展名。上面那段是来自苹果文档的参考。
-
@Raptor 是的,你知道。您必须拥有名为“blah”和“blah@2x”的文件。不过,这取决于你。很容易切换到。它已经存在了两年。它使管理图像更容易。它不需要任何代码更改。它将有助于 iOS8 3x 图像。但如果你不想使用它,我可以理解......不用等......哈哈
-
@Raptor 它还有助于验证您的图标图像和启动图像。
标签: objective-c uiimage ios8