如何将地址转换为坐标以放置在 SwiftUI 中的地图上?

时间:2020-12-18 20:55:49

标签: json swift swiftui

我如何从 json 文件中获取字符串地址,例如。 “23 Duncan St, New York City, NY”并将其转换为 Swift 的纬度/经度坐标,然后用于放置在地图上?

这感觉应该是简单和流行的,但我找不到解决方案。

1 个答案:

答案 0 :(得分:1)

使用 CoreLocation 框架中的 CLGeocoder

let address = "23 Duncan St, New York City, NY"
let geoCoder = CLGeocoder()
geoCoder.geocodeAddressString(address) { (placemarks, error) in
    guard
        let placemarks = placemarks,
        let location = placemarks.first?.location
    else { return }
    // do whatever you want with CLLocaiton object
}

并直接从 CLLocation 对象坐标。