我尝试在地图上用绿色和按钮制作一个自定义图钉。 但它不起作用。我有一个名为Placemark的类,它实现了mkannotation协议。 这是我的方法,应该显示一个绿色的针,但它没有:
- (MKAnnotationView *) map:(MKMapView *)map viewForAnnotation:(id <MKAnnotation>) annotation{
MKPinAnnotationView *annView=[[MKPinAnnotationView alloc] initWithAnnotation:annotation reuseIdentifier:@"currentloc"];
annView.pinColor = MKPinAnnotationColorGreen;
annView.animatesDrop=TRUE;
annView.canShowCallout = YES;
annView.calloutOffset = CGPointMake(-5, 5);
return annView;
}
我还想指定我的MKMapview被称为“map”及其IBOutlet。
感谢
答案 0 :(得分:1)
方法名称必须为mapView:viewForAnnotation:
。地图视图专门针对该名称。您可以更改内部参数变量名称,但不能更改冒号前的部分。
试试这个:
- (MKAnnotationView *) mapView:(MKMapView *)map
viewForAnnotation:(id <MKAnnotation>) annotation
通过拼写错误,地图视图不会调用您的viewForAnnotation方法,并且必须在地图上放置默认的红色图钉。