我知道您可以使用以下内容创建自定义注释视图:
-(MKAnnotationView *)mapView:(MKMapView *)mapView viewForAnnotation:(id <MKAnnotation>)annotation
{
MKPinAnnotationView *annotationView = [[[CustomAnnotationView alloc] initWithAnnotation:annotation reuseIdentifier:@"CustomAnnotation"] autorelease];
annotationView.image = [UIImage imageNamed:@"customPin.png"];
return annotationView;
}
..但是如何在我的代码的其他部分更改图像..(在使用上面的内容创建之后)?
答案 0 :(得分:2)
您可能不再需要答案了,但仍然没有答案。我通常做的是在注释中添加一个属性,告诉我应该使用哪个图像。它可以是BOOL,UIImage,也可以是你喜欢的任何东西。
在viewForAnnotation
中,我检查该值并设置适当的图像。
每当我想要更新图像时,我都会更改属性的值,然后删除并添加注释:
[theMapView removeAnnotation: myAnnotation];
[theMapView addAnnotation: myAnnotation];
这样,重新绘制了注释。