определить устройство Ipad - PullRequest
3 голосов
/ 08 июля 2010

Я пишу универсальное приложение для iphone и ipad.Как определить, является ли устройство iPad.Я использовал эту ссылку для определения типа iPhone (3G, 3GS).

Определение устройства (iPhone, iPod Touch) с помощью iPhone SDK

Ответы [ 5 ]

33 голосов
/ 08 июля 2010

Настоятельно рекомендуется не определять тип устройства для определения того, работает ли приложение на iPad, а изучать либо функции, либо идиому пользовательского интерфейса. Многие приложения, которые тестируют только для определенных типов устройств, ломаются, когда выходит новое оборудование (что, как правило, довольно часто).

Обычно, если вам нужно определить, запущено ли приложение на iPad, это потому, что вам нужно настроить интерфейс пользователя так, чтобы он соответствовал большей области экрана устройства. Для этого Apple рекомендует проверить идиому пользовательского интерфейса, используя следующий код:

if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad)
{
    // iPad-specific interface here
}
else
{
    // iPhone and iPod touch interface here
}
4 голосов
/ 08 июля 2010

Решение Брэда абсолютно верно.Если вы создаете универсальное приложение, предназначенное для работы на iPhone с более старой ОС, а также с современными iPad и iPhone, вы можете добавить этот код для обнаружения ситуаций, когда идиома не определена.

2 голосов
/ 10 апреля 2013

Вот лучший ответ, который я получил:

if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone)
{
    //iPhone methods
}
else if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad)
{
    //iPad methods
}
1 голос
/ 17 мая 2013

попробуйте

     if([UIDevice currentDevice].userInterfaceIdiom == UIUserInterfaceIdiomPad)
        {
            // etc.
        }
     else
        {
        //iphone
         }
0 голосов
/ 17 мая 2013
if ( [(NSString*)[UIDevice currentDevice].model isEqualToString:@"iPad"] ) {
            NSLog(@"...in iPad");         
} else {
            NSLog(@"...in iPhone/iPod");              
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...