2014-11-10 4 views
1

Я знаю, что есть такие вопросы, как это, но у меня нет решения. Я пытаюсь понять, если это iPhone 6 или нет.Обнаружение iPhone 6 и плюс

#define IS_IPHONE_5 (IS_IPHONE && [[UIScreen mainScreen] bounds].size.height == 568.0) 
#define IS_IPHONE_6 (IS_IPHONE && [[UIScreen mainScreen] bounds].size.height == 667.0) 

Когда я попробовать это его возвращение IS_IPHONE_5 верно даже в iPhone 6. Если я попробовать native.scale iphone 5 и 6 также возвращает 2, только iphone 6 плюс возвращается 3. Таким образом, я не могу получить его, если он iphone 6 с высоты или по шкале.

NSStringFromCGRect(mainScreen.bounds), mainScreen.coordinateSpace, mainScreen.scale, mainScreen.nativeScale); 

Все они возвращаются одинаково в iPhone 5 и iPhone 6. Итак, как его обнаружить? всякая помощь пожалуйста.

+0

Почему бы вам обнаружить iPhone приложение работает? Нет необходимости, вы можете использовать AutoResizemask или auotlayout, чтобы правильно исправить свой пользовательский интерфейс. – rckoenes

+1

См. Http://stackoverflow.com/questions/25754942/how-to-enable-native-resolution-for-apps-on-iphone-6-and-6-plus – rmaddy

+1

Что именно вы хотите добиться, чтобы обнаружить устройство пользователя , Возможно, вы следуете неправильному подходу для своего приложения. –

ответ

1

Для того, чтобы поддержать родное разрешение на iPhone 6/6 + вам необходимо либо

  • обеспечивают соответствующего размера изображения запуска
  • обеспечивают XIB файл для запуска экрана