在iPhone模拟器iPhone6的错误屏幕分辨率
问题描述:
当我在模拟器中运行我的应用程序时,我没有得到正确的屏幕分辨率。在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)
答
1136x640是iPhone 5或iPhone 5S的分辨率。由于您的应用不支持iPhone 6和iPhone 6 Plus屏幕尺寸,因此您很可能会在模拟iPhone 5,模拟iPhone 5s或iPhone 5兼容模式下使用较新的手机。
答
我注意到,您使用您的故事板的固定大小是什么被从xxx.frame.height和xxx.bound.height读取。因此,如果您在仿真指标中使用iPhone 5作为尺寸,那么这就是正在读取的内容,而不是模拟器的尺寸。
这是一个恼人的错误,我还没有找到任何解决方法。
是的,但你还没有回答这个问题。为什么模拟器运行时选择这种兼容模式? – andrewz
我做到了。 “由于您的应用不支持iPhone 6和iPhone 6 Plus屏幕尺寸。” –