在Google Maps SDK for iOS中点按另一个标记时,我可以拦截标记取消选择吗?

时间:2014-04-30 11:35:35

标签: ios google-maps-sdk-ios

我知道我可以使用didTapAtCoordinate,当我点击地图上的其他地方时,会取消选择标记。 但是如果有多个标记并且我点击另一个标记(例如MarkerA - > MarkerB),那么在前一个标记DidDeselect时是否有任何回调? 我在GMSMapView环顾四周,但找不到任何可以使用的东西。

我想在选择时更改标记颜色或图像,并在另一个标记选择或标记取消选择时将其更改回来。

谢谢。

1 个答案:

答案 0 :(得分:4)

selectedMarker的{​​{3}}说:

  

选中的标记。设置此属性选择一个   特别标记,显示一个信息窗口。如果这个属性是   非零,将其设置为nil取消选择标记,隐藏信息   窗口。 使用KVO可以观察到此属性。

因此,您可以使用doco通知selectedMarker的更改。如果您在设置KVO时使用NSKeyValueObservingOptionOld(详细说明Key Value Observing),系统会通知您旧值,即取消选择的标记。