在我的应用中有多个注释。这是代码。
SecondViewController.m
-(void)putAnnotation {
for (int i=0; i<[self.atmCentres count]; i++) {
NSDictionary *tempDict = [atmCentres objectAtIndex:i];
MapLocation *annotation = [[MapLocation alloc] initWithDictionary:tempDict];
[mapView addAnnotation:annotation];
[annotation release];
}
}
MapLocation.m
-(id)initWithDictionary :(NSDictionary *)_ATMDetails {
ATM = _ATMDetails;
coordinate.latitude = [[ATM objectForKey:@"Latitude"]doubleValue];
coordinate.longitude = [[ATM objectForKey:@"Longitude"]doubleValue];
return self;
}
SecondViewController.m
- (void)mapView:(MKMapView *)mapView annotationView:(MKAnnotationView *)view calloutAccessoryControlTapped:(UIControl *)control {
MapLocation *annotation = (MapLocation *)[view annotation];
NSLog(@"%@", annotation.ATM);
}
有时我会为几个地方获得相同的坐标,因此我会得到一个注释。虽然坐标以外的其他数据不相同。
因此,当我在callout中使用detailDisclosureButton时,我会得到该注释的最后一个数据。怎么解决这个问题。 随意进一步询问。提前谢谢。