【发布时间】:2017-02-21 08:04:17
【问题描述】:
我在我的应用程序中使用了集群,并且我还想要一些非集群的标记(比如它不应该是集群的成员)。现在我想分别点击两个标记。因为我对两个不同的标记有不同的动作。我已经提到了这个 SO link 并且我按照他们的步骤进行操作。
我拿了两个不同的集群管理器
1.) 普通标记:
MarkerManager customNewMarkerManager = new MarkerManager(googleMap);
customNewMarkerManager.newCollection("DEMO").addMarker(new MarkerOptions().position(new LatLng(latitudemy, longitudemy)).icon(icon));
googleMap.setOnMarkerClickListener(customNewMarkerManager);
customNewMarkerManager.getCollection("DEM").setOnMarkerClickListener(new GoogleMap.OnMarkerClickListener() {
@Override
public boolean onMarkerClick(Marker marker) {
// other logic here
return false;
}
});
2.) 聚类标记
ClusterManager mClusterManager = new ClusterManager<ModelLocation>(getActivity(), googleMap);
mClusterManager.setRenderer(new PersonRenderer());
googleMap.setOnCameraIdleListener(mClusterManager);
googleMap.setOnMarkerClickListener(mClusterManager);
mClusterManager.setOnClusterClickListener(this);
mClusterManager.setOnClusterItemClickListener(this);
for (int i = 0; i < markerArrayList.size(); i++) {
mClusterManager.addItem(markerArrayList.get(i));
}
mClusterManager.cluster();
现在,发生了什么我无法获得任何点击事件。
不是这个customNewMarkerManager.getCollection("DEM").setOnMarkerClickListener 也不是事件聚类点击事件
onClusterClick, onClusterInfoWindowClick, onClusterItemClick, onClusterItemInfoWindowClick
任何人都可以完成这种类型的功能,或者任何人有更好的想法来完成这个功能。
【问题讨论】:
标签: android google-maps google-maps-markers markerclusterer