Mapkit引脚颜色没有变化

时间:2010-03-11 20:34:51

标签: iphone cocoa-touch mapkit

我正在做以下事情,总是得到绿色的针脚:

pin.pinColor = MKPinAnnotationColorRed;
        [self.mapView addAnnotation:pin];
        [pin release];

pin的类型为“NSObject”。所有引脚都是绿色的。我应该采用不同的方式吗?

1 个答案:

答案 0 :(得分:7)

确保您的pin类实现了MKAnnotation协议,并且我相信会获得非标准的引脚颜色,您必须实现viewForAnnotation方法。

- (MKAnnotationView *) mapView:(MKMapView *)mapView viewForAnnotation:(id <MKAnnotation>) annotation
{
    MKPinAnnotationView *newAnnotation = [[MKPinAnnotationView alloc] initWithAnnotation:annotation reuseIdentifier:@"redpin"];
    newAnnotation.pinColor = MKPinAnnotationColorRed;
    newAnnotation.animatesDrop = YES;
    newAnnotation.canShowCallout = YES;
    return newAnnotation;
}