在Google Maps SDK ios中使用哪个标记?

时间:2014-08-06 05:12:51

标签: ios objective-c google-maps-sdk-ios

我在GMSMapView中有很多标记。我想知道哪个标记被点击了。 我知道有- (BOOL)mapView:(GMSMapView *)mapView didTapMarker:(GMSMarker *)marker代表。但我的问题是,当我点击任何标记时,我将在infoWindow中显示每个标记的不同信息。所以,我必须知道哪个标记被点击。我怎么能这样做?

2 个答案:

答案 0 :(得分:4)

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

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

答案 1 :(得分:2)

您可以在数据创建过程中设置标记的 accessibilityLabel 属性。

例如,您正在从一组对象创建标记,然后将每个标记的 marker.accessibilityLabel 设置为其在数组中的位置,这样当用户打算点击任何标记时,只需查找它的accessibilityLabel,所以在这个位置找到数组中的数据。