MKReverseGeoCoderDelegate не вызывается - PullRequest
0 голосов
/ 07 апреля 2011

Я пытаюсь использовать MKReverseGeoCoder API, чтобы получить название города на основе координаты. По какой-то причине делегат никогда не вызывается; есть идеи почему? Вот код:

- (void)startReverseLookup
{
  [reverseCoordinateInfo initWithCoordinate:self.currentlocation.coordinate];
  [reverseCoordinateInfo setDelegate:self];
  [reverseCoordinateInfo  start];
  NSLog(@"Reverse Geocode started");
}

- (void)reverseGeocoder:(MKReverseGeocoder *)geocoder didFailWithError:(NSError *)error
     {
      NSLog(@"RC - ERROR !!!");
      }

- (void)reverseGeocoder:(MKReverseGeocoder *)geocoder didFindPlacemark:(MKPlacemark    *)placemark
 {
     NSLog(@"RC lookup finished !! - Locality is:%@",placemark.locality);
 }  

Я объявляю протокол в файле .h, а затем вызываю startReverseLookup. Я вижу первый NSLog, но после этого ничего не происходит - он просто остается там навсегда, и делегат никогда не вызывается ни для одного из методов. Есть предложения?

1 Ответ

0 голосов
/ 07 апреля 2011

изменить следующий метод -

- (void)startReverseLookup
{
    reverseCoordinateInfo = [[MKReverseGeocoder alloc] initWithCoordinate:self.currentlocation.coordinate];
    [reverseCoordinateInfo setDelegate:self];
    [reverseCoordinateInfo  start];
    NSLog(@"Reverse Geocode started");
} 
...