所以我有以下图片:
splash1.png(IPHONE 3) splash1@2x.png(IPHONE 4) splash1-568h@2x.png(IPHONE 5)
我想在iphone 3,4,5中显示相应的图像。
我试过
UIImage * img = [UIImage imageNamed: @"splash1.png"];
self.splashimg.image = img;
[self.splashimg setFrame: CGRectMake(0, 0, img.size.width, img.size.height)];
其中self.splashimg是一个图像视图,用于图像img。
但这仍然显示iphone 3图像,但没有获得iphone 4或5图像。
我该怎么办?
当我在iphone 5中查看应用程序时,我会看到启动图像,但是它的iphone 3版本。
答案 0 :(得分:2)
UIKit中没有针对常规-568h@2x
设备修饰符的规定:它仅适用于Default.png
。
因此,这解释了为什么您的应用没有使用iPhone 5特定版本的图片。
在任何情况下,它都应该能够使用您文件的@2x
版本,因此我建议检查splash1@2x.png
是否存在且未损坏或格式错误等。
您可以找到UIImage
的扩展程序(通过类别),以支持在此处使用-586@2x
设备修饰符:https://gist.github.com/3711077。