【问题标题】:iOS How do I get the the annotation selected index? [duplicate]iOS 如何获取注释选择索引? [复制]
【发布时间】:2013-12-25 04:07:03
【问题描述】:

我在地图上加载了 20 个不同的注释。当 pin 被触摸时,我想像这样抓取标题数据。

   PinModel *pinModel = [self.array objectAtIndex:0];
   NSLog(@"pin model %@",pinModel.headline);

这会抓取列表中的第一个,但我想根据我选择的图钉抓取标题。我把方法放在了didselect注解方法中。有没有办法告诉我选择了哪个图钉并据此抓取标题?任何提示或建议将不胜感激。

【问题讨论】:

  • 绝对是重复的,但是那个问题的答案有点糟糕。
  • 同意,但仍然是重复的。只需遵循网站的指导方针。不要射击信使。 ;)
  • @PatrickGoley,我同意你的看法。其他问题的答案并没有直接解决这个问题的要求。但是,这个问题与其他问题重复。
  • @user3120225,PinModel 是您的注释类吗?这些是您要添加到地图的对象吗?如果是这样,您只需将 view.annotation 转换为 PinModel,您就可以看到您的自定义属性。如果 PinModel 不是您要添加到地图的内容,则发布的答案是正确的方法。

标签: ios objective-c xcode annotations mapkit


【解决方案1】:

一种方法是实现您自己的符合 MKAnnotation 协议的类。向此类添加公共 PinModel 属性,以便您的注释可以直接保留它的模型。在您的地图视图中,使用这个新类来创建您的注释并将 PinModel 保存到您的自定义注释对象的属性中。然后,在didSelectAnnotation: 中将注解转换回您的自定义注解类(为安全起见,请在转换前检查注解的类),并直接从注解上的属性中获取 PinModel。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-12-13
    • 1970-01-01
    • 2019-01-20
    • 1970-01-01
    相关资源
    最近更新 更多