iphone - iOS CoreLocation CLGeocoder 提供不完整的英国邮政编码

标签 iphone ios ios5 geocoding core-location

我让 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

理想情况下,我想要一个完整的邮政编码。想到的唯一选择是只使用前四个字符,但我想我会先在这里问一下,以防万一有人有更好的主意。

最佳答案

他们没有完整的英国邮政编码数据库,因此您只能通过 Google API 获得此解决方案。

您需要使用完整的邮政编码数据库和公司,例如 http://www.postcodeanywhere.co.uk/卖掉它们。

关于iphone - iOS CoreLocation CLGeocoder 提供不完整的英国邮政编码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9790302/

相关文章:

iphone - 在禁用按钮的情况下淡入淡出图像

objective-c - 如何处理临时 NSManagedObject 实例?

ios - 不使用在线 API 的 IOS 应用程序中的语言翻译

iOS MagicalRecord 表格 View 的分组和排序。它们究竟是如何工作的?

ios - UIPickerView 中的文本换行

iphone - 尝试使用 UIGraphicsGetImageFromCurrentImageContext() 捕获 MPMoviePlayerViewController View 时获取空白图像

ios - Facebook SDK iOS 登录并安装了 Facebook 应用程序

iphone - 当 UINavigationBar 隐藏/显示时如何防止 View 调整大小/转换

ios - 通过单击左右按钮操作将 UICollectionView 的单元格滚动到左右方向

objective-c - CoreLocation 停止为几个应用程序用户工作