iOS Swift - CLGeocoder завершениеHandler блок
Я пытаюсь разобрать местоположение (CLLocation) в строку.
func locationToString (currentLocation: CLLocation) -> String? {
var whatToReturn: String?
CLGeocoder().reverseGeocodeLocation(currentLocation, completionHandler: { (placemarks: [AnyObject]!, error: NSError!) in
if error == nil && placemarks.count > 0 {
let location = placemarks[0] as CLPlacemark
whatToReturn = "\(location.locality) \(location.thoroughfare) \(location.subThoroughfare)"
}
})
return whatToReturn
}
Очевидно, что whatToReturn всегда возвращает ноль, так как завершение работает в фоновом режиме. У меня возникают трудности с пониманием, как мне обновить строку, когда завершение концовки завершено?
Благодарю.