Когда пользователь нажимает на объект инфраструктуры, Maps 3D SDK для Android показывает виджет Places для этого объекта. Вы можете отслеживать события кликов и скрывать этот виджет с помощью OnMap3DClickListener.
Для работы виджета Places необходимо добавить Places SDK в качестве зависимости.
Отслеживание событий кликов
Чтобы отслеживать события кликов на карте, вызовите метод setMap3DClickListener в экземпляре GoogleMap3D.
Когда пользователь нажимает на карту, обратный вызов onMap3DClick получает объект Map3DClickEvent со следующими свойствами:
location– объектLatLngAltitude, представляющий географические координаты и высоту клика.placeId– уникальный идентификатор (String?) места, на которое нажал пользователь, илиnull, если такого места нет.
Метод onMap3DClick возвращает объект Boolean:
- Return
false– показывает виджет Places UI по умолчанию (если дляplaceIdне задано значениеnull). - Return
true: подавляет виджет Places UI по умолчанию.
В следующем примере показано, как настроить прослушиватель кликов и отключить виджет Places UI по умолчанию, чтобы выполнить настраиваемое действие.
googleMap3D.setMap3DClickListener { clickEvent ->
val location = clickEvent.location
val placeId = clickEvent.placeId
// Perform custom action, for example logging or showing a custom tooltip
showCustomTooltip(location, placeId)
// Suppress the default Places UI widget by returning true
true
}