0
有没有办法从集群中排除一个选定的标记?Android谷歌地图集群如何排除一个标记
这是我的渲染器类
private class StoreRenderer extends DefaultClusterRenderer<Store> {
HashMap<Store, Marker> storeMarkerMap = new HashMap<Store, Marker>();
public StoreRenderer(Context context, GoogleMap map, ClusterManager<Store> clusterManager) {
super(context, map, clusterManager);
}
public Marker getMarkerFromStore(Store clusterItem) {
return storeMarkerMap.get(clusterItem);
}
public void removeMarkerFromStore(Store itemToRemove) {
storeMarkerMap.remove(itemToRemove);
}
@Override
protected void onBeforeClusterItemRendered(Store item, MarkerOptions markerOptions) {
super.onBeforeClusterItemRendered(item, markerOptions);
markerOptions.icon(BitmapDescriptorFactory.fromResource(item.getMainCategoryResourceImage()));
}
@Override
protected void onClusterItemRendered(Store clusterItem, Marker marker) {
super.onClusterItemRendered(clusterItem, marker);
storeMarkerMap.put(clusterItem, marker);
}
@Override
protected boolean shouldRenderAsCluster(Cluster cluster) {
return cluster.getSize() > 3;
}
public HashMap<Store, Marker> getStoreMarkerMap() {
return storeMarkerMap;
}
}
,我将所有的商店这样
ClusterManager<Store> mClusterManager = new ClusterManager<Store>(getContext(), map);
StoreRenderer renderer = new StoreRenderer(getContext(), my_map, mClusterManager);
mClusterManager.setRenderer(renderer);
.....
mClusterManager.addItem(temp);
mClusterManager.setOnClusterItemClickListener(new ClusterManager.OnClusterItemClickListener<Store>() {
@Override
public boolean onClusterItemClick(Store storeClusterItem) {
markerClicked(storeClusterItem);
return true;
}
});
我怎么能排除聚类点击的标志?