Próbuję zbudować wersję mojej aplikacji specjalnie dla iPhone 6 i 6 Plus, podczas gdy ja nie mam żadnego sprzętu, muszę przetestować na symulatorze! ale wygląda na to, że symulator ma dziwny błąd! Pierwszy i najbardziej otrzymuję rozdzielczości ekranu i łuski, przez ten kod:Masz problem z wykryciem iPhone'a 6/Plus na symulatorze
UIScreen *mainScreen = [UIScreen mainScreen];
NSLog(@"Screen bounds: %@, Screen resolution: %@, scale: %f, nativeScale: %f",
NSStringFromCGRect(mainScreen.bounds), mainScreen.coordinateSpace, mainScreen.scale, mainScreen.nativeScale);
więc o to w jaki sposób wykryć iPhone 6 i 6Plus (tryb portretowy):
#define iPhone6 ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone && [UIScreen mainScreen].bounds.size.height == 667)
#define iPhone6Plus ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone && [UIScreen mainScreen].bounds.size.height == 736)
problem jest! kiedy obiad moja aplikacja na iPhone6 / Plus symulator, kompilator daje mi informacje Sceen wyświetlacza iPhone 4" !:
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
Ale to działa dobrze na nowym projekcie (nie mogę utworzyć nowy projekt i zacząć od nowa!) I cleaned code
, delete build folder
, change project's name
, i zresetować Simulator contents setting
, ale nadal daje mi informacje o wyświetlaczu 4 "! .
Sprawdziłem to Q/A, ale odpowiedzi wymagają prawdziwego urządzenia!
Twój projekt został utworzony w Xcode 5, a otwarcie w 6 ... prawda? –
@FahimParkar Tak, zrobiłem! –
Czy próbowałeś dodać ekran Uruchomienie? Nawet MainStoryboard jest w porządku. – Phillip