2013-05-24 3 views
15

Я пытаюсь написать макрос, чтобы определить, что устройство имеет размер 3,5 дюйма или 4 дюйма. Что-то похожее ниже.iOS Написание макроса обнаруживает 3,5-дюймовый или 4-дюймовый дисплей

#define IOS_OLDER_THAN_6 ([ [ [ UIDevice currentDevice ] systemVersion ] floatValue ] < 6.0) 
    #define IOS_NEWER_OR_EQUAL_TO_6 ([ [ [ UIDevice currentDevice ] systemVersion ] floatValue ] >= 6.0) 

Может кто-нибудь мне помочь. Пожалуйста

ответ

56

вы можете обнаружить iphopne 3,5 дюйма или 4 дюйма, используя ниже: -

#define isiPhone5 ([[UIScreen mainScreen] bounds].size.height == 568)?TRUE:FALSE 

вы можете проверить его с помощью сильфона метода, например: -

 if (isiPhone5) 
    { 
      // this is iphone 4 inch 
    } 
    else 
    { 

      //Iphone 3.5 inch 
    } 

Пожалуйста, обратите внимание на это ссылка для вас знала все о Макро для определения устройства 3,5 дюйма или 4 дюйма.

How to detect iPhone 5 (widescreen devices)?

+1

Этот макрос неверен. Для кода: max = IS_iPhone5? 5: 6; Я получаю 1, потому что вы забыли добавить наручи. Сокращенный формат if-else здесь не нужен. Ниже правильный код: #define isiPhone5 ([[UIScreen mainScreen] bounds] .size.height == 568) – Szu

+1

не связан ориентированной ориентацией в iOS8? –

+0

@SjoerdПерфоры вы правы. Я добавил проверку ориентации в ответе, который я разместил по другому вопросу, поскольку ответы на этот вопрос больше не принимаются: http://stackoverflow.com/a/35208438/159758 – DonnaLea

5

Mean что-то вроде этого:

#define IS_IPHONE5 (([[UIScreen mainScreen] bounds].size.height-568)?NO:YES) 
2

вы можете проверить, если это iphone 5 (4 дюйма), как это:

Экран iPhone 5'имеет высоту 568 .

if ([ [ UIScreen mainScreen ] bounds ].size.height == 568) 
Смежные вопросы