我有一个使用CLGeocoder执行反向地理编码的iPhone应用程序(使用XCode 4.4.1构建,操作系统目标为IOS 5.1)。
在我的应用程序中,我为地图上的注记确定标题,如下所示:
CLPlacemark *placemark = ...;
NSString* title = [NSString stringWithFormat:@"%@, %@, %@", placemark.subLocality, placemark.locality, placemark.country]
...
当在IOS5.x设备上运行时,结果与预期一样,位置信息从左到右按比例递增(即郊区、城市、国家)。
如果我在IOS6设备上运行完全相同的应用程序,placemark.subLocality和placemark.locality的值颠倒过来,结果是(城市,郊区,国家)。
我怀疑这是从谷歌地图切换到苹果地图的结果。我不愿意根据IOS版本对此进行有条件的编码,因为我怀疑IOS6下的行为是不正确的,如果是这样的话,将来会得到纠正。
有没有人遇到过这个问题,如果是的话,有什么建议是最好的解决方法,还是我错过了什么(我是一个相对较新的IOS开发人员)?
发布于 2012-10-02 12:41:06
iOS 6.0中的反向地球观测响应中的Sublocality and locality are swapped,但仅适用于某些位置。旧金山似乎没问题,但悉尼(和其他澳大利亚城市)返回的值顺序错误。
https://stackoverflow.com/questions/12614848
复制相似问题