我有点问题。我想要的是什么:
我覆盖RadiusMarkerClusterer类,onSingleTapConfirmed方法
class MyRadiusMarkerClusterer extends RadiusMarkerClusterer {
public MyRadiusMarkerClusterer(Context ctx) {
super(ctx);
}
@Override
public boolean onSingleTapConfirmed(MotionEvent event, MapView mapView) {
if (super.onSingleTapConfirmed(event, mapView)) {
Toast.makeText(MapActivity.this, "cluster was clicked", Toast.LENGTH_SHORT).show();
return true;
}
return false;
}
}
但是我点击了任何人!如果person不在群集中并且我点击了他,则单击onSingleTapConfirmed调用。为什么?我想只为集群的元素(即通过集群)获得回调。是的,它是集群的元素,因为我们通过
添加了它personClusterMarkers.add(marker);
我如何处理仅针对可视化群集的事件?
答案 0 :(得分:0)
你为MyRadiusMarkerClusterer覆盖了onSingleTapConfirmed。因此,当单击群集器中的任何内容时,您将获得答案。
群集器不是群集,群集器包含许多群集。
如果要在点击群集标记时具有自定义行为,则必须通过覆盖buildClusterMarker来自定义此群集标记的创建。
看看这里:https://github.com/MKergall/osmbonuspack/issues/110
而不是设置自定义InfoWindow,您必须使用marker.setOnMarkerClickListener设置自定义OnMarkerClickListener。