自IOS 5发布以来,我不得不对我的应用程序进行一些更改,这些更改仅适用于使用IOS 5时。在用户使用IOS 5或IOS 4或更早版本时,如何启动我的应用程序?
答案 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];
}