多个注释在获取选定的索引注释时存在问题

发布于 2024-12-05 01:25:49 字数 231 浏览 3 评论 0原文

我已经在我的 iPhone 应用程序的 mapView 中成功显示了多个注释,但我也有问题..在屏幕顶部我有两个 Tab Map 和 List 。地图显示地图中的所有注释,列表显示地图中显示的 Tableview 中的数据。当我单击特定单元格时,我会获取该单元格的所有特定详细信息。但是当我尝试从 Tap 注释获取 id 时,我的数组在比较名称后会获得大量 id,因为我们在数组列表中具有相同的名称,所以我如何区分来自注释标签。如何设置注释的标签?

I have displayed multiple annotation successfully in mapView in my iphone application, but I have problem too .. In top of the screen I have two Tab Map and List . map display all annotation in map and list display those data in Tableview which is display in map. when I click on particular cell i get all the particular detail of that cell.but when I try to get id from Tap annotation my array getting lots of id after comparison of name because we have same name in my array list so how can I differentiate from annotation tag. How to set tag of annotations ?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

牛↙奶布丁 2024-12-12 01:25:49

calloutAccessoryControlTapped 委托方法中,使用 view.annotation 访问被点击的注释。

如果您有自定义注释类,则可以对其进行强制转换以轻松访问属性(您可能还需要首先检查所点击的注释是否是您感兴趣的类的实例 - 如果您使用多个注释,这一点很重要类):

if ([view.annotation isKindOfClass:[TagMark class]]) {
    TagMark *tm = (TagMark *)view.annotation;
    NSLog(@"tm.someProperty = %@", tm.someProperty);
}

In the calloutAccessoryControlTapped delegate method, use view.annotation to access the annotation that was tapped.

If you have a custom annotation class, you can cast it to easily access the properties (you may also want to first check if the annotation tapped is an instance of the class you're interested in--important if you're using multiple annotation classes):

if ([view.annotation isKindOfClass:[TagMark class]]) {
    TagMark *tm = (TagMark *)view.annotation;
    NSLog(@"tm.someProperty = %@", tm.someProperty);
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文