【发布时间】:2012-03-20 15:57:12
【问题描述】:
CoreLocation 找到了我,然后我尝试运行 reverseGeocodeLocation 来找出邮政编码。但是,我收到的邮政编码不完整(SO31 4)。通常你会在 4 之后期望另外两个字符。这是我正在使用的代码:
- (void)locationManager:(CLLocationManager *)manager
didUpdateToLocation:(CLLocation *)newLocation
fromLocation:(CLLocation *)oldLocation {
[self.geocoder reverseGeocodeLocation:newLocation completionHandler:^(NSArray *placemarks, NSError *error) {
CLPlacemark *placemark = [placemarks objectAtIndex:0];
self.postcode.text = placemark.postalCode;
if (self.postcode.text.length > 0)
[self.locationManager stopUpdatingLocation];
}];
}
值得注意的是,我在 Google Maps API 上尝试经纬度也得到了类似的结果,您可以在此处查看: http://maps.googleapis.com/maps/api/geocode/json?latlng=50.87138339,-1.30983213&sensor=true
理想情况下,我想要一个完整的邮政编码。想到的唯一选择是只使用前四个字符,但我想我会先在这里问一下,以防有人有更好的主意。
【问题讨论】:
标签: iphone ios ios5 geocoding core-location