0

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

提前致谢

4

1 回答 1

3

如果您将名称/描述存储在您的title/中,则只需访问以下属性即可访问这些信息:subtitleMKAnnotationViewannotationMKAnnotationView

if ([view.annotation.title isEqualToString: @"Golden Gate"])
   {
         //Load golden gate information in a new viewcontroller
   }
于 2012-05-24T14:33:05.963 回答