2015-09-07 94 views
0

当我在模拟器中运行我的应用程序时,我没有得到正确的屏幕分辨率。在iPhone模拟器iPhone6的错误屏幕分辨率

我在iPhone6模式下在模拟器中运行时查询[[UIScreen mainScreen]界限]并获得1136x640(缩放后)。

但iPhone6的分辨率是1334x750。

选择其他目标设备会导致同样的问题。

如何在模拟器中确定正确的屏幕尺寸?

使用的XCode 6.4版本(6E35b)

从我的控制台输出示例:

ios: scale=(2) 
ios: before scale, main.screen.size..................=(568,320) 
ios: before scale, main.screen.preferred.mode.size...=(640,1136) 
ios: before scale, application.frame.size............=(568,320) 
ios: before scale, current.mode.size.................=(640,1136) 

回答

0

1136x640是iPhone 5或iPhone 5S的分辨率。由于您的应用不支持iPhone 6和iPhone 6 Plus屏幕尺寸,因此您很可能会在模拟iPhone 5,模拟iPhone 5s或iPhone 5兼容模式下使用较新的手机。

+0

是的,但你还没有回答这个问题。为什么模拟器运行时选择这种兼容模式? – andrewz

+0

我做到了。 “由于您的应用不支持iPhone 6和iPhone 6 Plus屏幕尺寸。” –

0

我注意到,您使用您的故事板的固定大小是什么被从xxx.frame.heightxxx.bound.height读取。因此,如果您在仿真指标中使用iPhone 5作为尺寸,那么这就是正在读取的内容,而不是模拟器的尺寸。

这是一个恼人的错误,我还没有找到任何解决方法。