更改单击注释时显示的文本
我使用 MapKit 来定位用户,我想个性化用户单击注释时出现的文本,默认文本是当前位置,
这是我的代码:
- (MKAnnotationView *) mapView:(MKMapView *)mapView viewForAnnotation:(id <MKAnnotation>) annotation{
MKPinAnnotationView *annView = [[MKPinAnnotationView alloc] initWithAnnotation:annotation reuseIdentifier:@"currentLoc"];
// annotation color
[annView setPinColor:MKPinAnnotationColorGreen];
//annotation Animation
[annView setAnimatesDrop:YES];
[annView setCanShowCallout:YES];
return annView;
}
i use MapKit to locate user and i want to personnalize the text which appear when the user click on the annotation, the default text is current location
here is my code :
- (MKAnnotationView *) mapView:(MKMapView *)mapView viewForAnnotation:(id <MKAnnotation>) annotation{
MKPinAnnotationView *annView = [[MKPinAnnotationView alloc] initWithAnnotation:annotation reuseIdentifier:@"currentLoc"];
// annotation color
[annView setPinColor:MKPinAnnotationColorGreen];
//annotation Animation
[annView setAnimatesDrop:YES];
[annView setCanShowCallout:YES];
return annView;
}
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您想使用 MKAnnotationView 而不是 MKPinAnnotationView。 MKAnnotationView有一个名为annotation的属性,它有一个名为title的属性,所以:
我还没有测试过这种方式,通常的方法是创建一个实现MKAnnotation协议的自定义类,然后添加该类的实例到地图。
You want to use MKAnnotationView rather than MKPinAnnotationView. MKAnnotationView has a property called annotation which has a property called title, so:
I haven't tested doing it this way exactly, the usual way to do it is to make a custom class that implements the MKAnnotation protocol and then add instances of that class to the map.