【发布时间】:2012-07-17 08:25:03
【问题描述】:
我想将经纬度转换为地址(地名)。
我认为可以在 iOS 5.0 上使用 CLGeocoder 并在 iOS
我的应用程序需要从 iOS 4.0 开始支持。
任何人都可以建议一种方法来实现这一点。
提前致谢。
【问题讨论】:
标签: objective-c ios
我想将经纬度转换为地址(地名)。
我认为可以在 iOS 5.0 上使用 CLGeocoder 并在 iOS
我的应用程序需要从 iOS 4.0 开始支持。
任何人都可以建议一种方法来实现这一点。
提前致谢。
【问题讨论】:
标签: objective-c ios
API 已被弃用并不意味着您不能在 iOS 5 上使用它。它仍然可以工作,但可能会在未来的版本中被删除,而不会发出警告。因此,为了保持兼容性,您可以检查 CLGeocoder 类是否可用并使用适当的实现:
Class clGeocoderClass = NSClassFromString(@"CLGeocoder");
if (clGeocoderClass) {
// iOS 5. Use CLGeocoder
} else {
// iOS prior to 5. Use MKReverseGeocoder.
}
因此,如果将来删除MKReverseGeocoder,您不会遇到任何问题,因为CLGeocoder 类将是首选。无论如何,运行 iOS 5 之前版本的设备不可避免地会回退到MKReverseGeocoder,这在旧版本上没有问题。
【讨论】: