MKMapAnnotations didSelectAnnotationView не отвечает

Я создаю приложение, которое извлекает данные с сервера и указывает разные дома на карте. Моя проблема в том, что он отображает аннотации, но когда я нажимаю на них, они не отвечают - (void)mapView:(MKMapView *)mapView didSelectAnnotationView:(MKAnnotationView *)view

Я помещаю свои аннотации в массив:

int s;
self.mapAnnotations = [[NSMutableArray alloc] init];

for(s=0; s < numberOfAnnotations; s++)
{
    //NSDictionary *dict2 = [parser objectWithString:[[arrayOfResults objectAtIndex:0] description]];

   CLLocationDegrees daLong = [[[[[arrayOfResults objectAtIndex:s] objectForKey:@"map"] objectForKey:@"longitude"] description] floatValue];
   CLLocationDegrees daLat = [[[[[arrayOfResults objectAtIndex:s] objectForKey:@"map"] objectForKey:@"latitude"] description] floatValue];

    /*self.customAnnotation = [[BasicMapAnnotation alloc] initWithLatitude:daLat andLongitude:daLong];
    [self.mapView addAnnotation:self.customAnnotation];*/

    BasicMapAnnotation *m = [[BasicMapAnnotation alloc] initWithLatitude:daLat andLongitude:daLong];
    [self.mapAnnotations addObject:m];


}

[self.mapView addAnnotations:self.mapAnnotations];
NSLog(@"this number of annotations %d", [self.mapAnnotations count]);

Я также заметил, когда создал отдельный дом для размещения на карте в моем представленииDidLoad:

self.normalAnnotation = [[BasicMapAnnotation alloc] initWithLatitude:38 andLongitude:-90.2045];
self.normalAnnotation.title = @"                                                         ";
[self.mapView addAnnotation:self.normalAnnotation];

Это сработало, когда я нажал на него, но те, которые прошли через массив, не сработали. Может ли кто-нибудь помочь мне понять, почему он не отвечает?


person bakwarte    schedule 31.01.2012    source источник


Ответы (1)


Это потому, что аннотации должны иметь title для отображения выноски. В своем цикле for установите свойство title, как вы сделали с self.normalAnnotation.title = @" ".

person John Estropia    schedule 31.01.2012