如何在android中禁用单击地图标记?
我已经编写了自定义位置侦听器,它每10分钟检查一次用户的位置,并更新地图上表示用户位置的标记。问题在于标记是可点击的,即它显示一个按钮以获取指向标记的方向。我想禁用它,我该怎么做 下面是创建/更新标记的函数如何在android中禁用单击地图标记?,android,google-maps,location,Android,Google Maps,Location,我已经编写了自定义位置侦听器,它每10分钟检查一次用户的位置,并更新地图上表示用户位置的标记。问题在于标记是可点击的,即它显示一个按钮以获取指向标记的方向。我想禁用它,我该怎么做 下面是创建/更新标记的函数 public void updateUserMarker() { Double temp_latitude = ((MainActivity)mContext).mLatitude; Double temp_longitude = ((MainActivit
public void updateUserMarker() {
Double temp_latitude = ((MainActivity)mContext).mLatitude;
Double temp_longitude = ((MainActivity)mContext).mLongitude;
if(mMap!=null) {
if (user_marker == null) {
MarkerOptions markerOptions = new MarkerOptions().position(new LatLng(temp_latitude, temp_longitude));
markerOptions.icon(BitmapDescriptorFactory.fromResource(R.drawable.my_marker_icon));
user_marker = mMap.addMarker(markerOptions);
} else {
user_marker.setPosition(new LatLng(temp_latitude, temp_longitude));
}
}
}
试试这段代码
mMap.setOnMarkerClickListener(new GoogleMap.OnMarkerClickListener() {
@Override
public boolean onMarkerClick(Marker marker) {
return true;
}
});
返回true还将阻止打开信息窗口
要将其与群集管理器一起使用
:
mMap.setOnMarkerClickListener(new GoogleMap.OnMarkerClickListener() {
@Override
public boolean onMarkerClick(Marker marker) {
if (marker == user_marker) {
return true;
}
return clusterManager.onMarkerClick(marker);
}
});
这对我不起作用。我已经在使用android的ClusterManager作为我的点击监听器。你可以拦截点击并检查点击的是否是你的位置标记。因此,在单击侦听器中,您将执行以下操作:
if(marker==user\u marker)返回true
else返回clusterManager.onMarkerClick(marker)