Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/google-maps/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 如何检测长时间点击谷歌地图标记_Android_Google Maps_Google Maps Android Api 2_Onlongclicklistener - Fatal编程技术网

Android 如何检测长时间点击谷歌地图标记

Android 如何检测长时间点击谷歌地图标记,android,google-maps,google-maps-android-api-2,onlongclicklistener,Android,Google Maps,Google Maps Android Api 2,Onlongclicklistener,在我的应用程序中,我有一个MapFragment 我知道 然后在事件中添加一个标记 onMapClick(LatLng point){ ... map.addMarker(new MarkerOptions() .position(point) .title(txt)); ... } 所有这些都非常有效。 我需要知道的是,当用户长时间点击我放在地图上的标记时 我做了一些手工计算 onMapLongClick(LatLng point){ ... i

在我的应用程序中,我有一个MapFragment

我知道

然后在事件中添加一个标记

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))

...
}

但这显然不是一个很好的方法,而且它也不是很精确,只有当缩放相机在地图上处于较高的水平时才起作用。查看我不久前关于此的介绍

嘿,看看我在其他线程中给出的解决方案


Thx,我看到了给你的答案,和我做的一样。我希望有更准确的答案:/n不,我必须走另一条路。希望这将在未来实现。当用户抬起手指时,您是否可以区分onMarkerClick和onMarkerLongClick,或者您需要在按下标记400毫秒后启动它?使用javascript进行此操作。。。。基本上,您可以使用OnMarkerDragListener[检查我的解决方法][1][1]:
onMapLongClick(LatLng point){
...

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

...
}