API, чтобы определить, работать ли ли на iPhone или iPad [дубликат]

32
задан Eric 7 October 2010 в 20:31
поделиться

3 ответа

Checkout UI_USER_INTERFACE_IDIOM .

Возвращает идиому интерфейса, поддерживаемую текущим устройством.

Возвращаемое значение
UIUserInterfaceIdiomPhone , если устройством является iPhone или iPod touch, или UIUserInterfaceIdiomPad , если устройством является iPad.

UIUserInterfaceIdiom

Тип интерфейса, который должен использоваться на текущем устройстве

typedef enum {
   UIUserInterfaceIdiomPhone,
   UIUserInterfaceIdiomPad,
} UIUserInterfaceIdiom;
41
ответ дан 27 November 2019 в 20:36
поделиться

Используйте NSClassFromString и класс, специфичный для iPad. Подробнее здесь:

http://developer.apple.com/iphone/library/documentation/General/Conceptual/iPadProgrammingGuide/StartingYourProject/StartingYourProject.html#//apple_ref/doc/uid/TP40009370-CH9-SW3

1
ответ дан 27 November 2019 в 20:36
поделиться
  1. Проверьте наличие свойства userInterfaceIdiom, используя respondsToSelector:. Если его нет, то мы находимся на устройстве версии до 3.2, следовательно, это не iPad.
  2. Если userInterfaceIdiom существует, используйте его.

Edit: ... что, очевидно, делает макрос UI_USER_INTERFACE_IDIOM(), так что используйте его вместо этого. :)

.
1
ответ дан 27 November 2019 в 20:36
поделиться
Другие вопросы по тегам:

Похожие вопросы: