我有一个对象数组,其中包含地图上每个图钉的信息。我可以使用[mapView addAnnotions:array];将它们的坐标添加到地图上。但是当涉及到选择一个引脚,然后显示该特定引脚的标注视图时(使用正确的引脚位置和阵列中的正确信息),我迷路了。我也不完全知道标注视图如何在多个引脚上工作。我曾尝试查看Apple示例代码,但它并没有太大帮助,并且谷歌搜索问题也无济于事。

简单版本:您应该如何在地图上放置多个图钉,并在选择它们和调用标注视图时区分它们?

编辑:例如,iPhone上的“地图”应用程序如何与显示企业的几个位置一起使用,当您点击它们时,将显示正确的名称和指向所述企业的链接。

最佳答案

试试这个代码

- (MKAnnotationView *)mapView:(MKMapView *)mapView viewForAnnotation:(id <MKAnnotation>)annotation {

static NSString *identifier = @"MyLocation";
if ([annotation isKindOfClass:[MNMyLocation class]]) {

    MKPinAnnotationView *annotationView = (MKPinAnnotationView *) [atmLocatorMap dequeueReusableAnnotationViewWithIdentifier:identifier];
    if (annotationView == nil) {
        annotationView = [[MKPinAnnotationView alloc] initWithAnnotation:annotation reuseIdentifier:identifier];
    } else {
        annotationView.annotation = annotation;
    }

    annotationView.enabled = YES;
    annotationView.canShowCallout = YES;
    //annotationView.image=[UIImage imageNamed:@"arrest.png"];

    return annotationView;
}

return nil;

}

10-08 18:22