2

所以我有一个字典对象的 NSArray,其中包含一堆 JSON 数据。使用该数据,我用一堆 MKPointAnnotations 填充地图,每个都代表给定字典中的数据。当用户点击其中一个注释点时,我如何才能确定哪个点被点击,以便我可以将正确的数据集与该点相关联?

4

2 回答 2

3

您需要创建自己的注释类,以便在每个注释中存储附加信息。在这里查看我的答案:

https://stackoverflow.com/a/15554322/341994

注意那里提供的链接!我的书深入讨论了这一点:

http://www.aeth.com/iOSBook/ch34.html#_annotations

你可以下载一个开发这个概念的工作项目:

https://github.com/mattneub/Programming-iOS-Book-Examples/tree/master/ch34p848map/p707p723map

于 2013-04-04T04:27:19.480 回答
1

我认为这个委托方法会帮助你做到这一点。

- (void)mapView:(MKMapView *)mapView annotationView:(MKAnnotationView *)view calloutAccessoryControlTapped:(UIControl *)control
{
    NSLog(@"Tapped on: %@", view.annotation.title);
}

您还可以在每个注释上设置标签,并calloutAccessoryControlTapped使用view.tag.

请参阅MKMapViewDelegate了解更多信息

于 2013-04-04T04:23:05.193 回答