当我使用CLGeocoder获取当前城市名称时,遇到了一个非常奇怪的问题。
我用Cupertino作为验证地点,我可以100%确定这不是覆盖范围的问题。NSLog正确打印了placemark,但在placemark.locality时,它打印了(null)。我尝试了其他属性,它们都有效。我查看了一下,人们似乎有类似的问题,但没有可行的答案。感谢您的帮助。
以下是代码:
[geoCoder reverseGeocodeLocation:newLocation
completionHandler:^(NSArray *placemarks, NSError *error) {
NSLog(@"%@",placemarks);
CLPlacemark *placemark =[placemarks objectAtIndex:0];
NSLog(@"%@",placemark);
NSString *city = placemark.locality;
NSLog(@"City:%@", city);
if (!city){
city = placemark.subAdministrativeArea;
}
NSLog(@"City:%@", city);