ios - MKPointAnnotation 标签

标签 ios objective-c mkannotation mkannotationview

简单问题:我似乎找不到 MKPointAnnotation 类的标记属性。它返回错误;

MKPointAnnotation *annotation = [[HCIAnnotationViewController alloc]
                                     initwithHouse:house];

以下返回错误(未找到类型为“MKPointAnnotation”的对象的属性标记

NSLog(@"%d",annotation.tag);

我的问题是,如果我不允许设置标签,我该如何检测点击了哪个注释。

我遵循的其他方法是

为 MkAnnotationView 设置标签,但是我发现添加的最后一个注释不会立即调用 viewForAnnotation(可能是因为我在小 map 上添加了大约 1000 个 MkPointAnnotations,所以它仅在需要查看时调用。)。

请告诉我如何解决这个问题?

最佳答案

由于 MKPointAnnotation 不是 UIView 的子类,因此没有名为标签的属性。但你有属性(property)坐标。我假设您的所有注释都有不同的坐标。这样您就可以检测出是哪一个。

你只需要比较坐标即可。

关于ios - MKPointAnnotation 标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16480905/

相关文章:

c++ - 获取Objective-C方法的地址

ios - UITableViewCell 不响应响应者链

ios - 我应该使用什么空间索引算法?

ios - 带有集群 : how to display multiple annotations on same view 的 MapView

ios - 如何将标题和自定义图像添加到 MKMapView 中的特定位置图钉?

ios - 使用 UITableView 创建照片提要

ios - 计算哪个图像用户在水平 Collection View 上,启用分页

ios - Xcode 6 上带有自动布局的 UIScrollview

objective-c - 将照片上传到 Instagram 后,控件不会返回到应用程序

iphone - 当在 Objective-C 中调用 dealloc 时