Можно ли отменить выбор маркера перехвата при нажатии другого маркера в Google Maps SDK для iOS?
Я знаю, что могу использовать didTapAtCoordinate
, который отменит выбор маркера, когда я нажму на другое место на карте.
Но если есть несколько маркеров, и я нажимаю на другой (напр. MarkerA - > MarkerB), есть ли обратный вызов, когда предыдущий маркер DidDeselect?.
Я смотрю вокруг в GMSMapView
, но не могу найти ничего, что я мог бы использовать.
Я хочу изменить цвет маркера или изображение, когда он выбирается, и изменить его обратно, когда другой маркер выбирает или маркер отменяет выбор.
Спасибо.
1 ответ:
The doco for
selectedMarker
говорит:Выбранный маркер. Установка этого свойства выделяет конкретный маркер, показывающий информационное окно на нем. Если это свойство является не-ноль, установка его в ноль отменяет выбор маркера, скрывая информацию окно. это свойство можно наблюдать с помощью кво.
Таким образом, Вы можете использовать наблюдение за значением ключа для уведомления об изменениях в
selectedMarker
. Если вы используетеNSKeyValueObservingOptionOld
при настройке кво (описано более подробно здесь ), вы будете уведомлены о старом значении, то есть маркере, который был снят.