所以我有一个包含一堆JSON数据的Dictionary对象的NSArray。使用该数据,我使用一堆MKPointAnnotations填充地图,每个MKPointAnnotations代表给定字典中的数据。当用户点击其中一个注释点时,如何确定点击哪个点以便我可以将正确的数据集与该点相关联?
答案 0 :(得分:3)
您需要创建自己的注记类,以便在每个注释中存储其他信息。请在此处查看我的回答:
https://stackoverflow.com/a/15554322/341994
注意那里提供的链接!我的书深入讨论了这个问题:
http://www.apeth.com/iOSBook/ch34.html#_annotations
你可以下载一个开发这个概念的工作项目:
https://github.com/mattneub/Programming-iOS-Book-Examples/tree/master/ch34p848map/p707p723map
答案 1 :(得分:1)
我认为这种委托方法可以帮助您这样做。
- (void)mapView:(MKMapView *)mapView annotationView:(MKAnnotationView *)view calloutAccessoryControlTapped:(UIControl *)control
{
NSLog(@"Tapped on: %@", view.annotation.title);
}
此外,您可以在每个注释上设置标记,并使用calloutAccessoryControlTapped
在view.tag
代理内部进行检查。
请参阅MKMapViewDelegate了解更多