2015-09-07 144 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作爲尺寸,那麼這就是正在讀取的內容,而不是模擬器的尺寸。

這是一個惱人的錯誤,我還沒有找到任何解決方法。