-2

可能重复:
使用 iPhone SDK 确定设备(iPhone、iPod Touch)

ios如何判断iphone3gs iphone4 iphone4s和iphone5的设备类型?我知道[[UIScreen mainScreen] scale],但是如何知道设备的类型,比如 iphone4 和 iphone5

4

1 回答 1

0

按照下面的代码,它将满足您的需求。

#define IS_IPHONE ( [[[UIDevice currentDevice] model] isEqualToString:@"iPhone"] )
#define IS_IPOD   ( [[[UIDevice currentDevice] model] isEqualToString:@"iPod touch"] )
#define IS_IPAD   ( [[[UIDevice currentDevice] model] isEqualToString:@"iPad"] )
#define IS_IPHONE_5_SCREEN [[UIScreen mainScreen] bounds].size.height >= 568.0f && [[UIScreen mainScreen] bounds].size.height < 1024.0f
#define IS_IPHONE_4_SCREEN [[UIScreen mainScreen] bounds].size.height >= 480.0f && [[UIScreen mainScreen] bounds].size.height < 568.0f


if(IS_IPHONE_5_SCREEN)
{
    if(IS_IPHONE)
        NSLog(@"Hey, this is an iPhone 5 screen!");
    else if(IS_IPOD)
        NSLog(@"Hey, this is an iPod 5 screen!");
    else
        NSLog(@"Hey, this is a simulator screen with iPhone 5 screen height!");
}
else if(IS_IPHONE_4_SCREEN)
{
    if(IS_IPHONE)
        NSLog(@"Hey, this is a lower iPhone screen than 5!");
    else if(IS_IPOD)
        NSLog(@"Hey, this is a lower iPod screen than 5!");
    else
        NSLog(@"Hey, this is a lower simulator screen than 5!");
}
else if(IS_IPAD){
    NSLog(@"Hey, this is an iPad screen!");
}
else{
    NSLog(@"Hey, this is an ipad simulator screen!");
}

享受!干杯!

于 2012-12-26T05:11:08.567 回答