我在地图上放置了一些自定义的MKPinAnnotationView,其中包含有关地标的不同信息(名称,描述,图像,附件按钮)。当用户单击并打开其中一个引脚,然后单击其中的附件按钮时,我想知道用户点击了哪个引脚,因此我可以加载一个包含更多详细信息的视图控制器。
我找到了这些方法:
- (void)mapView:(MKMapView *)mapView annotationView:(MKAnnotationView *)view calloutAccessoryControlTapped:(UIControl *)control
{
}
- (void)mapView:(MKMapView *)mapView didSelectAnnotationView:(MKAnnotationView *)view
{
}
...但我怎么知道选择了哪个引脚?我想做点什么:
- (void)mapView:(MKMapView *)mapView didSelectAnnotationView:(MKAnnotationView *)view
{
//Example
if ([view.description isEqualToString: @"Golden Gate"])
{
//Load golden gate information in a new viewcontroller
}
}
...但是view.description不会给我正确的信息。
提前致谢
答案 0 :(得分:3)
如果您要将名称/说明存储在title
的{{1}} / subtitle
中,只需访问MKAnnotationView
的{{1}}属性即可访问这些信息。 MKAnnotationView
:
if ([view.annotation.title isEqualToString: @"Golden Gate"])
{
//Load golden gate information in a new viewcontroller
}