MKPinAnnotationView自定义图像

时间:2012-04-16 14:28:18

标签: iphone objective-c mapkit mkpinannotationview

我想在地图上设置自定义图像而不是普通图钉。我也希望它能够被打开并为每一个添加下降动画。

有什么建议吗?

编辑:这就是我的全部

- (MKAnnotationView *)mapView:(MKMapView *)mapView viewForAnnotation:(ActivityAnnotation *)annotation
{
    static NSString* AnnotationIdentifier = @"AnnotationIdentifier";
    MKPinAnnotationView* pinView = [[MKPinAnnotationView alloc] initWithAnnotation:annotation reuseIdentifier:AnnotationIdentifier];
    pinView.animatesDrop=YES;
    pinView.canShowCallout=YES;
    UIImage *image = [UIImage imageNamed:@"Map_Pin"];
    pinView.image = image;
    UIImageView *imageView = [[UIImageView alloc] initWithImage:image];
    imageView.frame = CGRectMake(-2.5,6,27,30);
    [pinView addSubview:imageView];
    UIButton* rightButton = [UIButton buttonWithType:UIButtonTypeDetailDisclosure];
    rightButton.tag = [activities indexOfObject:annotation.activity];
    [rightButton addTarget:self action:@selector(showDetails:) forControlEvents:UIControlEventTouchUpInside];
    pinView.rightCalloutAccessoryView = rightButton;

    return pinView;
}

一切正常,但原始图钉不断显示在我的默认图像后面。我怎么擦掉它?

1 个答案:

答案 0 :(得分:6)

尝试不使用MKPinAnnotationView,而是使用MKAnnotationView。 MKPinAnnotationView默认显示一个引脚,只允许您自定义颜色(如果我没有记错的话)。 MKAnnotationView允许自定义图钉。