确定选择了哪个MKPinAnnotationView?

时间:2012-05-24 14:19:35

标签: iphone objective-c mkmapview mkannotation mapkit

我在地图上放置了一些自定义的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不会给我正确的信息。

提前致谢

1 个答案:

答案 0 :(得分:3)

如果您要将名称/说明存储在title的{​​{1}} / subtitle中,只需访问MKAnnotationView的{​​{1}}属性即可访问这些信息。 MKAnnotationView

if ([view.annotation.title isEqualToString: @"Golden Gate"])
   {
         //Load golden gate information in a new viewcontroller
   }