我正在嘗試爲iPhone 6和6 Plus專門構建我的應用程序版本,而我沒有任何硬件,我必須在模擬器上進行測試!但似乎,模擬器有一個奇怪的錯誤!第一,對於大多數我得到的屏幕分辨率和比例,通過這個代碼:在模擬器上檢測iPhone 6/Plus時出現問題
UIScreen *mainScreen = [UIScreen mainScreen];
NSLog(@"Screen bounds: %@, Screen resolution: %@, scale: %f, nativeScale: %f",
NSStringFromCGRect(mainScreen.bounds), mainScreen.coordinateSpace, mainScreen.scale, mainScreen.nativeScale);
所以這裏是如何檢測iPhone 6和6Plus(肖像模式):
#define iPhone6 ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone && [UIScreen mainScreen].bounds.size.height == 667)
#define iPhone6Plus ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone && [UIScreen mainScreen].bounds.size.height == 736)
問題!當我的午餐我的應用程序上iPhone6 /加模擬器,編譯器給我的iPhone 4" 顯示的sceen信息:
2014-09-28 12:32:08.153 WOD[2924:42290]
Screen bounds: {{0, 0}, {320, 568}}, Screen resolution: <UIScreen: 0x7fa15be0f9b0; bounds = {{0, 0}, {320, 568}}; mode = <UIScreenMode: 0x7fa15bd0d4a0;
size = 640.000000 x 1136.000000>>, scale: 2.000000, nativeScale: 2.000000
但它正常工作的新項目(我不能創建一個新的項目,並重新開始! ) 我cleaned code
,delete build folder
,change project's name
,並重置Simulator contents setting
但仍然給我4「顯示的信息! 。
我檢查了這個Q/A但答案需要一個真實的設備!
你在xcode 5中創建了這個項目,並在6中打開...對嗎? – 2014-09-28 09:22:25
@FahimParkar是的,我做到了! – 2014-09-28 09:23:48
您是否嘗試添加啓動屏幕?即使是MainStoryboard也沒問題。 – Phillip 2014-09-28 09:36:41