Я хочу получить долготу и широту, используя адрес в качестве строки. Я нашел этот очень полезный пост здесь: Преобразовать адрес в координаты swift
Но когда я хочу сохранить результаты в двойном поле и вернуть его, я не могу. То, что я сделал, это
func getLatitude(address:String) -> Double{
var lati = 0.0
var geocoder = CLGeocoder()
geocoder.geocodeAddressString("your address") {
placemarks, error in
let placemark = placemarks?.first
if let lat = placemark?.location?.coordinate.latitude{
lati = lat
}
}
}
return lati
}
Внутри блока geocoder.geocodeAddressString значение заполняется, но когда я пытаюсь вернуться, оно всегда дает мне 0.0, и я пробовал все. Любые идеи, пожалуйста?
Если он попытается напечатать значение во внутреннем блоке кода, он будет напечатан, но я никогда не смогу его вернуть.
Заранее благодарю за ответы.