Когда пользователь нажимает на объект инфраструктуры, 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 по умолчанию, чтобы выполнить настраиваемое действие:
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
}