iPhone:iOS 6上的图像显示模糊?

iPhone:iOS 6上的图像显示模糊?,iphone,ios6,Iphone,Ios6,我有一张320×156的abc.png图片,在iPhone4上运行良好,还有一张名为abc@2x.png尺寸为640 x 312,同样适用。但是什么时候请告诉我如何在iPhone 6设备上使用该图像?首先,到目前为止,没有什么比iPhone 6更像了,它要么是iOS6,要么是iPhone 5。 但我想你说的是屏幕分辨率为640X1136的iPhone5。 iPhone 5没有内置的图像选择方法 如果你有abc.png和abc@2x.png在参考资料中,您可以使用如下代码: UIImage * i

我有一张320×156的abc.png图片,在iPhone4上运行良好,还有一张名为abc@2x.png尺寸为640 x 312,同样适用。但是什么时候请告诉我如何在iPhone 6设备上使用该图像?

首先,到目前为止,没有什么比iPhone 6更像了,它要么是iOS6,要么是iPhone 5。 但我想你说的是屏幕分辨率为640X1136的iPhone5。 iPhone 5没有内置的图像选择方法

如果你有abc.png和abc@2x.png在参考资料中,您可以使用如下代码:

UIImage * image = [UIImage imageNamed:@"abc.png"];
它将选择abc.png作为非视网膜显示和abc@2x.png用于视网膜显示(包括iPhone4S和iPhone5)

如果要为iPhone 5加载单独的图像,需要检查屏幕高度:

if(screenHeight == 480)
{
 //iphone 3,3G,4
}
else if(screenHeight == 960)
{
//iphone 4S 
}
else if(screenHeight == 1136)
{
//iphone 5
}
这样,您可以为不同的iPhone加载不同的图像。
如果回答了您的问题,请更新并检查答案。

恐怕您的问题的答案是一种叫做
自动布局的东西。这就是苹果为应对iOS 6视图的不同外形而提出的解决方案。只有
@2x
图像可用,但通过
自动布局
,您可以准确地告诉它如何操作

这是一个关于如何使用
AutoLayout
的不错的教程,我试过了,效果很好:


这个东西对ios6的模拟器有效吗。我正在使用代码:[UIScreen mainScreen]applicationFrame].size.height==568来检查模拟器[UIScreen mainScreen]applicationFrame]的高度。我正在使用的size.height和screenHeight是相同的。。。。。只是我考虑到了规模。。。。非视网膜显示的刻度值=1;对于retina display=2iphone4,它有一个retina显示屏,因此它的屏幕高度与iphone4s相同