xcode模拟器iphone屏幕尺寸

时间:2014-08-16 09:52:12

标签: ios iphone xcode

我把这段代码放在我的应用中:

CGRect screenRect = [[UIScreen mainScreen] bounds];
CGFloat screenWidth = screenRect.size.width;
CGFloat screenHeight = screenRect.size.height;
NSLog(@"screenWidth : %f", screenWidth);
NSLog(@"screenHeight : %f", screenHeight);

我用Iphone 3.5英寸启动模拟器。 日志打印宽度为320.000000。

然而,当我为模拟器更换设备时,选择4英寸,它仍然显示相同的宽度。为什么?怎么了。对于Iphone 4及更高版本,它的宽度应该是640像素,不是吗?

3 个答案:

答案 0 :(得分:1)

在模拟器中,screenWidth总是320(现在是iphone4-5)。您可以使用[[UIScreen mainScreen] scale]检查比例;

如果你在视网膜iPhone上运行,

比例将是2.0。

答案 1 :(得分:1)

根据Apple Docs,该值是“默认逻辑值”。如果您想知道实际尺寸,请查看[[UIScreen mainScreen] scale]。对于视网膜设备,此值为2.0[[UIScreen mainScreen] bounds].size.width * [[UIScreen mainScreen] scale]

也是如此

答案 2 :(得分:0)

没有宽度总是320点/ DPI - 你的意思是它真的有640个PIXELS(取决于设备)

计算始终基于设备INDEPENDENT点

UIScreen提供了一个scaleFactor,用于翻译dpi<>像素

相关问题