如果设备是ios 5
问题描述:
如何确定运行我的应用程序的设备是否为ios 5?如果设备是ios 5
我试图使用UIAppearance类,但它会给出一个错误,如果它运行在5以外的ios版本上。所以我想要if语句只运行这行代码,如果设备是ios5。
感谢,
编辑: 所以这里是解决方案,
float version = [[[UIDevice currentDevice] systemVersion] floatValue];
if (version >= 5.0){
[[UINavigationBar appearance] setBackgroundImage:image forBarMetrics:UIBarMetricsDefault];
}
答
你可以使用
[[UIDevice currentDevice] systemVersion]
的OS版本,但更好的方法是检查特定功能,沿线的东西
if(NSProtocolFromString(@"UIAppearance")) {
// Do something
}
要查看该类是否可用,请执行您的操作。 如果不能确保只为iOS 5构建,并且它只会安装在iOS 5设备上。
我通常使用'respondsToSelector:'如果测试的原因是为了避免在iOS 4上调用iOS 5选择器。 – 2012-01-30 00:08:34