Я создал объект, который получает координату и должен вернуть метку после обратного геокодирования.Проблема в том, что этот метод является асинхронным, поэтому мне нужен способ вернуть метку, как только она была найдена.В моем контроллере представления я называю это:
[getzip reverseGeocodeCurrentLocation:coordinate];
, где getzip является экземпляром объекта, который реализует это (который все еще пуст в моем случае ....):
- (void)reverseGeocoder:(MKReverseGeocoder *)geocoder didFindPlacemark:(MKPlacemark *)placemark
Теперь, как только я попаду в reverseGeocoder: didFindPlacemark, как я могу вернуть метку обратно в viewcontroller?
Я пытался сделать то же самое, что и в некоторых примерах, которые выполняются с LocationManager, где вызывается метод locationUpdate из locationManager: didUpdateToLocation: fromLocation, и реализует locationUpdate в viewcontroller, но это не удаетсяРабота.Другими словами, я сделал это:
- (void)reverseGeocoder:(MKReverseGeocoder *)geocoder didFindPlacemark:(MKPlacemark *)placemark
{
[self.delegate setPlacemark:placemark];
}
и реализовал setPlacemark в viewcontroller, но по какой-то причине он не получает setPlacemark (кстати, метка верна, когда я вызываю setPlacemark: placemark в reverseGeocoder).
Спасибо!