Идентификация устройства для iPad iOS 4.2 - PullRequest
0 голосов
/ 30 ноября 2010

Я понял, что iOS 4.2 тоже для iPad. Приведенный ниже код является стандартным шаблоном, который мы все используем для идентификации устройства. как это изменится для 4.2 iPad. Должен ли я изменить код, чтобы рассмотреть тип устройства, а не версию?

#if __IPHONE_OS_VERSION_MAX_ALLOWED >= 30200
    CGRect frame = [[UIScreen mainScreen] bounds];
    self.view.frame = frame;
#else
    CGRect frame = [self.view bounds];
#endif

Ответы [ 3 ]

5 голосов
/ 30 ноября 2010

Лучшим способом было бы [[UIDevice currentDevice] userInterfaceIdiom]

Сначала проверьте, что currentDevice отвечает на этот селектор.Если нет, то это iPhone / iPod под управлением iOS 3.1.x или более ранней версии.

Если он отвечает на этот селектор, вы можете проверить результат для UIUserInterfaceIdiomPhone или UIUserInterfaceIdiomPad.

2 голосов
/ 30 ноября 2010

Вы можете попробовать это также:

#if __IPHONE_OS_VERSION_MAX_ALLOWED >= 30200

if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad)
 {
     // type you code for iPad
 } else {
     // type you code for iPhone
 }

#endif
0 голосов
/ 30 ноября 2010

проверьте версию устройства и код соответственно

float version = [[[UIDevice currentDevice] systemVersion] floatValue];
    if (version == 4.2)
    {
        CGRect frame = [[UIScreen mainScreen] bounds];
    self.view.frame = frame;

    }
else
    self.view.frame = frame;

Используйте этот код, он может вам помочь.

...