邮政编码/邮政编码到纬度和经度坐标

时间:2016-06-25 09:35:21

标签: ios xcode

如何将zip转换为拉链,或者在我的情况下将邮政编码(UK)转换为lat长坐标?

我读过使用谷歌地理编码API,但阅读时有相当多的限制,例如在应用程序中使用谷歌地图并限制请求。

我还找到this,但我不确定如何实施

2 个答案:

答案 0 :(得分:2)

您可能希望使用接受特定地址类型字典的GeocodeAddressDictionary。

在您的情况下,您将执行以下操作。

    let geocoder = CLGeocoder()
    let dic = [NSTextCheckingZIPKey: yourZipCode]

    geocoder.geocodeAddressDictionary(dic) { (placemark, error) in

        if((error) != nil){
            print(error!)
        }
        if let placemark = placemark?.first {
            let lat = placemark.location!.coordinate.latitude
            let long = placemark.location!.coordinate.longitude                

        }

    }

答案 1 :(得分:1)

使用此代码,您可以提供地址(更准确,因为邮政编码不是具体的坐标,而是地址)。

请记住班级顶部的import CoreLocation

let address = "1 Infinite Loop, CA, USA"
let geocoder = CLGeocoder()

geocoder.geocodeAddressString(address, completionHandler: {(placemarks, error) -> Void in
    if((error) != nil){
        print("Error", error)
    }
    if let placemark = placemarks?.first {
        let coordinates:CLLocationCoordinate2D = placemark.location!.coordinate
    }
})