Я разрабатываю комикс с использованием Cocoa Touch в Xcode. Я не знаю, как получить подробную информацию об устройстве, будь то устройство iphone, ipad или ipod.
Я пытаюсь сделать универсальный билд.
Как определить устройство? Есть ли способ изменить размер экрана в зависимости от устройства?
Вы можете использовать это для первого вопроса -
+ (BOOL)isDeviceAniPad { #ifdef UI_USER_INTERFACE_IDIOM return (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad); #else return NO; #endif }
А для второго вам не нужно менять его самостоятельно, iphone / ipad будет использовать размеры представлений, соответствующие его экрану.Вам нужно будет предоставить изображения разных размеров или масштабировать их до размера экрана.
UIDevice класс:
NSString *deviceType = [UIDevice currentDevice].model; if([deviceType isEqualToString:@"iPhone"]) // it's an iPhone
, если необходимо различать все три типа устройств:
Определить устройство (iPhone, iPod Touch) с помощью iPhone SDK
NSString * deviceType = [UIDevice currentDevice] .model; NSLog (@ "% @", deviceType);
or
Не пытайтесь проверить определенные модели устройств, вместо этого проверьте функции устройства.
Для просмотра размера экрана UIUserInterfaceIdiom в документации.
UIUserInterfaceIdiom
size_t size; sysctlbyname("hw.machine", NULL, &size, NULL, 0); char *name = malloc(size); sysctlbyname("hw.machine", name, &size, NULL, 0);
теперь вы можете сравнить как if (strcmp(name, "iPhone1,1")) и другие ... "iPhone1,2" ...
if (strcmp(name, "iPhone1,1"))