在运行我的iPhone应用程序时,如何知道正在使用的IOS?

时间:2011-11-30 11:17:42

标签: iphone ios xcode ios5

自IOS 5发布以来,我不得不对我的应用程序进行一些更改,这些更改仅适用于使用IOS 5时。在用户使用IOS 5或IOS 4或更早版本时,如何启动我的应用程序?

3 个答案:

答案 0 :(得分:1)

if([[[UIDevice currentDevice] systemVersion] compare:@"5.0" options:NSNumericSearch] !=  NSOrderedDescending)
{
   // code here
}
else 
{
  // code here
}

答案 1 :(得分:1)

您应该完全避免询问系统版本。

更好的设计会询问特定功能。

例如:if (NSClassFromString(@"UIPrintInfo"))会告诉您当前设备是否支持4.2或更高版本的打印API。

通过这种方式,您可以计划代码以使用功能(如果可用),而不是基于操作系统版本。更多相关信息 - How to check iOS version?

但如果你必须 -

float version = [[[UIDevice currentDevice] systemVersion] floatValue]; 

答案 2 :(得分:0)

有时候很高兴知道使用了哪个版本的iOS。 但最好询问系统是否存在方法:

// iOS 5 UINavigationBar backgroundImage
if ([self.navigationBar respondsToSelector:@selector(setBackgroundImage:forBarMetrics:)]) {
    UIImage *backgroundImage = [UIImage imageNamed:@"titlebar.png"];
    [self.navigationBar setBackgroundImage:backgroundImage forBarMetrics:UIBarMetricsDefault];
}