Я пытаюсь создать маркер на картах Google с помощью перетаскивания кнопки на картах Google в положение перетаскивания.
мой первоначальный план состоял в том, чтобы имитировать щелчок по позиции, в которой кнопка будет удалена, но я не могу найти никакого метода для имитации щелчка по определенной позиции.
Кто-нибудь пробовал что-то подобное? Что было бы лучшим способом?
дело в том, что пользователь должен перемещаться по карте, и я не думаю, что можно сделать маркер статическим по отношению к положению экрана (?) И генерировать (и удалять старый) новый маркер каждый раз, когда вид карты меняется это довольно уродливое решение, я думаю.
Связанный вопрос: Как я могу перетащить значок в карты Google?
моя идея состоит в том, чтобы добавить прозрачный вид над картой, когда пользователь нажимает кнопку, после перетаскивания этого вида восстанавливает x, y на экране и делает проекцию на карту, чтобы добавить маркер, есть метод в map sdk, который дает широту и долготу из координат x, y на экране
Я думаю, вы нашли отброшенную позицию, потому что в своем вопросе вы хотите имитировать щелчок по определенной позиции, поэтому мой ответ:
Вы можете найти LatLng по отброшенной позиции
val projection = googleMap.getProjection()
// Returns the geographic location that corresponds to a screen location
val latLng = projection.fromScreenLocation(Point(yourX, yourY))
и после этого легко создать маркер
// Creating a marker
val markerOptions = MarkerOptions()
// Setting the position for the marker
markerOptions.position(latLng)
Вы всегда можете поставить маркер на карту, а затем разрешить пользователю перемещать его (свойство перетаскивания).