如何检查应用程序是否在 iPhone 5 上运行然后执行某些操作?
问问题
19320 次
6 回答
18
#define IS_IPHONE_5 ( fabs( ( double )[ [ UIScreen mainScreen ] bounds ].size.height - ( double )568 ) < DBL_EPSILON )
然后在代码中:
if (IS_IPHONE_5) {
//is iphone 5
}
于 2012-11-05T21:13:34.070 回答
12
您可能关心窗口大小,而不是品牌/型号,这会:
CGRect screenRect = [[UIScreen mainScreen] applicationFrame];
if (screenRect.size.height == 568)
{
// this is an iPhone 5+
}
于 2012-11-05T21:12:36.413 回答
3
于 2012-11-05T21:47:11.640 回答
3
使用屏幕很好。
#define IS_IPAD (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad)
#define IS_IPHONE (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone)
#define IS_IPHONE_5 (IS_IPHONE && [[UIScreen mainScreen] bounds].size.height == 568.0f)
不需要进行 epsilon 检查
于 2013-04-19T14:06:02.287 回答
0
我们可以直接将此方法放在常量文件中,并且可以在任何使用define的地方使用
#define ISIPHONE5 ( fabs( ( double )[ [ UIScreen mainScreen ] bounds ].size.height - ( double )568 ) < DBL_EPSILON )
#define HEIGHT (ISIPHONE5 ? 60:145)
或者可以使用
#define IS_IPHONE5 (([[UIScreen mainScreen] bounds].size.height-568)?NO:YES)
我们也可以通过以下方式检查 IOS
#define IOS_OLDER_THAN_6 ([[[UIDevice currentDevice] systemVersion] floatValue] < 6.0 )
#define IOS_NEWER_OR_EQUAL_TO_6 ([[[UIDevice currentDevice] systemVersion] floatValue] >= 6.0 )
于 2013-03-14T10:21:15.787 回答
-11
您可以检查您设备的 iOS 版本,如果是 6.0,那么它是 iPhone 5 .....
这是代码..
double osVersion = [[[UIDevice currentDevice] systemVersion] doubleValue];
NSLog(@"OSVersion: %f", osVersion);
if (osVersion == 6.0)
{
//Paste your code here.....
}
于 2012-11-05T23:35:22.737 回答