gpt4 book ai didi

iphone - Obj-C,仅在 iOS5 可用时有条件地运行代码?

转载 作者:可可西里 更新时间:2023-11-01 05:10:14 25 4
gpt4 key购买 nike

如果 iOS5 可用,我如何检查并有条件地只编译/运行代码?

最佳答案

您可以像这样检查 UIDevicesystemVersion 属性:

if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 5.0f) {
// Do something
}

但我个人不喜欢这种方法,因为我不喜欢解析从 systemVersion 返回的字符串并进行比较。

最好的方法是检查您要使用的类/方法是否存在。例如:

如果您想使用来自 Twitter 框架的 TWRequest:

Class twRequestClass = NSClassFromString(@"TWRequest");
if (twRequestClass != nil) {
// The class exists, so we can use it
} else {
// The class doesn't exist
}

或者,如果你想使用 startMonitoringForRegion: 来自 CLLocationManager,它在 iOS 5.0 中引入:

CLLocationManager *locationManager = [[CLLocationManager alloc] init];
...
if ([locationManager respondsToSelector:@selector(startMonitoringForRegion:)]) {
// Yep, it responds
} else {
// Nope, doesn't respond
}

一般来说这样检查比看系统版本要好。

关于iphone - Obj-C,仅在 iOS5 可用时有条件地运行代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9885630/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com