我有一张名为abc.png的图片,大小为320×156,在iPhone 4上运行良好,图片名为abc@2x.png,大小为640×312也可以。但是,请告诉我如何使用iPhone 6设备的图像?
答案 0 :(得分:1)
首先,目前没有像iPhone6那样的东西,它是iOS6或iPhone 5。 但我想你是在谈论iPhone 5,屏幕分辨率为640X1136。 没有内置的方法可以为iPhone 5选择图像。
如果您在资源中有abc.png和abc@2x.png,并使用如下代码:
UIImage * image = [UIImage imageNamed:@"abc.png"];
它将为非视网膜显示选择abc.png,为视网膜显示选择abc@2x.png(包括iPhone 4S和iPhone 5)。
如果要为iPhone 5加载单独的图像,则需要检查屏幕高度:
if(screenHeight == 480)
{
//iphone 3,3G,4
}
else if(screenHeight == 960)
{
//iphone 4S
}
else if(screenHeight == 1136)
{
//iphone 5
}
这样您可以为不同的iphone加载不同的图像。 如果它回答你的问题,请提高并检查答案。
答案 1 :(得分:0)
我担心,你的问题的答案是AutoLayout
。这是Apple提出的解决iOS 6视图的不同外形的解决方案。只有@2x
张图片可供使用,但使用AutoLayout
时,您可以准确地告诉它如何表现。
这是一个关于如何使用AutoLayout
的精彩教程,我尝试了它并且效果很好:
http://www.raywenderlich.com/20881/beginning-auto-layout-part-1-of-2
http://www.raywenderlich.com/20897/beginning-auto-layout-part-2-of-2