在Google Maps SDK for iOS中,应该点击哪个标记?

4

我在GMSMapView中有很多标记。我想知道哪个标记被点击了。 我知道有一个委托方法- (BOOL)mapView:(GMSMapView *)mapView didTapMarker:(GMSMarker *)marker。但我的问题是当我点击任何标记时,我需要在infoWindow中为每个标记显示不同的信息。因此,我必须知道哪个标记被点击了。我该怎么做?


看看有没有更容易完成工作的东西。就像我在下面的答案中提到的那样。 - iHulk
2个回答

5

创建标记时,将其userData属性设置为您自己的类的实例,该类存储有关标记的数据。

然后在didTapMarker中,您可以获取userData属性,将其强制转换为您自己的类型,然后提取所需的详细信息。


非常感谢,这正是我在寻找的! - Ayubxon Ubaydullayev

2
您可以在创建标记时从数据中设置标记的accessibilityLabel属性。
例如,如果您正在从对象数组创建标记,则将每个标记的marker.accessibilityLabel设置为其在数组中的位置,因此当用户点击任何标记时,只需查找其accessibilityLabel,然后从该位置的数组中查找数据即可。

太棒了,真的太棒了。 - SleepsOnNewspapers

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接