我在mapview上有三个引脚。我想给每个人一个不同的颜色。在委托方法viewForAnnotation中,我这样做:
- (MKAnnotationView *) mapView:(MKMapView *)mapView viewForAnnotation:(id <MKAnnotation>) annotation{
MKPinAnnotationView *annView=[[MKPinAnnotationView alloc] initWithAnnotation:annotation reuseIdentifier:@"anAddress"];
annView.pinColor = MKPinAnnotationColorGreen;
annView.animatesDrop=TRUE;
annView.canShowCallout = YES;
annView.calloutOffset = CGPointMake(-5, 5);
return annView;
}
我正在考虑创建一个MKPinAnnotationViews数组但是如何才能获得正确的数组,因为委托方法没有索引到任何东西?
答案 0 :(得分:3)
要区分UIView
,您可以使用the tag
property及其相应的viewWithTag:
方法。
但是,在您的上下文中,我建议您将颜色添加到注释类中。然后,您可以确保不为多个引脚重复使用相同的调用方。