MKReverseGeoCoderDelegate не вызывается
Я пытаюсь использовать 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 ответ
Решение
Изменить следующий метод -
- (void)startReverseLookup
{
reverseCoordinateInfo = [[MKReverseGeocoder alloc] initWithCoordinate:self.currentlocation.coordinate];
[reverseCoordinateInfo setDelegate:self];
[reverseCoordinateInfo start];
NSLog(@"Reverse Geocode started");
}