目前,我能够使用Android Google Maps API v2在Google地图中查看我的所有标记。
在地图上添加我的标记:
mapView.addMarker
(new MarkerOptions()
.position(aUsersLocation).
icon(BitmapDescriptorFactory.fromBitmap(aUserImage))
.snippet(My_VALUE_1)
.title(My_VALUE_2)
.hideInfoWindow();
我有几个标记,并且为每个标记的代码段和标题分配了几个值(My_VALUE_1和My_VALUE_2)。当用户单击标记时,我需要这些唯一值,并且将在onMarkerClick侦听器中以以下方式接收这些值:
@Override
public boolean onMarkerClick(Marker theMarker)
{
String aValue1 = theMarker.getSnippet();
String aValue2 = theMarker.getTitle();
theMarker.getPosition().latitude...
...
return false;
}
我的问题是:当我将代码段和标题值添加到标记时,当用户单击标记时,将显示infoWindow。
我需要隐藏标记的infoWindow。我尝试使用hideInfoWindow,但似乎无法正常工作。
请提出任何建议。
谢谢。
return true;
[从onMarkerClick
起禁用显示信息窗口并以标记为中心的默认行为。
如果使用群集,请这样写:
private var clusterManager: ClusterManager<SomeClusterItem>? = null
override fun onMapReady(googleMap: GoogleMap) {
this.googleMap = googleMap
clusterManager = ClusterManager(context!!, googleMap)
... // Other clusterManager and clusterRenderer initializations.
clusterManager!!.setOnClusterItemClickListener { item ->
// selectMarker(item)
true // false, if you want to show InfoWindow.
}
}