Swift 根据名称获取城市坐标

Swift get coordinates of a city by its name

我正在尝试通过名称获取城市的纬度和经度。 如果我输入城市名称 "london" 我的输出应该是它的坐标

我可以使用此代码通过坐标获取名称:

    var longitude :CLLocationDegrees = 41.0247
    var latitude :CLLocationDegrees = 40.522

    var location = CLLocation(latitude: latitude, longitude: longitude)
    println(location)



    CLGeocoder().reverseGeocodeLocation(location, completionHandler: {(placemarks, error) -> Void in
        println(location)

        if error != nil {
            println("Reverse geocoder failed with error" + error.localizedDescription)
            return
        }

        if placemarks.count > 0 {
            let pm = placemarks[0] as! CLPlacemark
            println(pm.locality)
        }
        else
        {
            println("Problem with the data received from geocoder")
        }
    })

反向地理编码将坐标作为输入并输出地址/行政级别。

地理编码的作用恰恰相反,这正是您所追求的。看看CLGeocoder's documentation page,都在