Как определить длинный клик по маркеру GoogleMap

В моем приложении есть MapFragment.

I do

map = mapFragment.getMap();

и после этого добавить маркер в событие

onMapClick(LatLng point){
    ...

    map.addMarker(new MarkerOptions()
    .position(point)
    .title(txt));

    ...
}

Все это прекрасно работает. Мне нужно знать, когда пользователь долго нажимает на маркер, который я поставил на карту.

Я сделал некоторые ручные расчеты в

onMapLongClick(LatLng point){
...

if((Math.abs(mrkrPos.latitude-point.latitude)<0.0005)&&(Math.abs(mrkrPos.longitude-point.longitude)<0.0005))

...
}

но это, очевидно, не лучший способ сделать это, и он не очень точен (работает только тогда, когда камера с зумом находится на высоких уровнях на карте)


person rickymarchiori    schedule 28.06.2013    source источник
comment
Вы согласны с возможностью различать onMarkerClick и onMarkerLongClick, когда пользователь поднимает палец, или вам нужно, чтобы он был запущен после, например. 400 мс при нажатии Marker?   -  person MaciejGórski    schedule 30.06.2013
comment
Используйте для этого javascript. длительное нажатие в javascript   -  person Premshankar Tiwari    schedule 02.07.2013
comment
В основном вы можете использовать заголовок OnMarkerDragListener [Проверьте мой обходной путь] [1] [1]: stackoverflow.com/questions/15391665/   -  person DanihelSan    schedule 30.01.2014


Ответы (2)


В настоящее время нет длинного прослушивателя кликов для маркеров. см. мой вопрос об этом некоторое время назад

person tyczj    schedule 28.06.2013
comment
Спасибо, я вижу ответ, данный вам, это то же самое, что и я. Я надеялся, что есть что-то более точное :/ - person rickymarchiori; 28.06.2013
comment
нет, я должен был пойти другим путем. Надеюсь, это будет реализовано в будущем - person tyczj; 28.06.2013

Эй, взгляните на решение, которое я дал в другой теме.

https://stackoverflow.com/a/42885588/3779042

person jknair    schedule 19.03.2017