ClusterClick侦听器不在Android中
我正在创建一个应用程序,将多个请求聚集在地图上。 我可以在地图上对请求进行集群,但我想在集群上获得单击事件。我尝试使用setOnClusterItemClickListener,但我无法用该方法捕获单击事件。我还在地图中使用了OnCamerachengeListener,当我点击集群时会运行该地图。 这是因为两位听众的原因还是我做错了什么 这是我的听众的代码ClusterClick侦听器不在Android中,android,google-maps,Android,Google Maps,我正在创建一个应用程序,将多个请求聚集在地图上。 我可以在地图上对请求进行集群,但我想在集群上获得单击事件。我尝试使用setOnClusterItemClickListener,但我无法用该方法捕获单击事件。我还在地图中使用了OnCamerachengeListener,当我点击集群时会运行该地图。 这是因为两位听众的原因还是我做错了什么 这是我的听众的代码 map.setOnCameraChangeListener(new GoogleMap.OnCameraChangeListener()
map.setOnCameraChangeListener(new GoogleMap.OnCameraChangeListener() {
@Override
public void onCameraChange(CameraPosition cameraPosition) {
cameraChangeHandler.removeCallbacks(throttledRunnable);
cameraChangeHandler.postDelayed(throttledRunnable, 300);
if (marker != null) {
marker.remove();
mClusterManager.clearItems();
}
LatLng latLng = cameraPosition.target;
appSharedPreference.setLatitude(String.valueOf(latLng.latitude));
appSharedPreference.setLongitude(String.valueOf(latLng.longitude));
marker = map.addMarker(new MarkerOptions().position(latLng));
submitData();
}
});
map.setOnMarkerClickListener(mClusterManager);
mClusterManager.setOnClusterItemClickListener(new ClusterManager.OnClusterItemClickListener<MyItem>() {
@Override
public boolean onClusterItemClick(MyItem myItem) {
Toast.makeText(getActivity(),"Hello",Toast.LENGTH_LONG).show();
return false;
}
map.setonCamerachenglistener(新的GoogleMap.onCamerachenglistener(){
@凌驾
CameraChange上的公共无效(CameraPosition CameraPosition){
cameraChangeHandler.removeCallbacks(ThrottledRunName);
cameraChangeHandler.postDelayed(ThrottledRunName,300);
如果(标记!=null){
marker.remove();
mClusterManager.clearItems();
}
LatLng LatLng=cameraPosition.target;
setLatitude(String.valueOf(latLng.latitude));
appSharedReference.setLongitude(String.valueOf(latLng.longitude));
marker=map.addMarker(新MarkerOptions().position(latLng));
submitData();
}
});
setOnMarkerClickListener(mClusterManager);
mClusterManager.setOnClusterItemClickListener(新的ClusterManager.OnClusterItemClickListener(){
@凌驾
公共布尔onClusterItemClick(MyItem MyItem){
Toast.makeText(getActivity(),“Hello”,Toast.LENGTH_LONG.show();
返回false;
}
})) 使用提供的链接,我可以使用以下代码实现此功能:
map.setOnCameraChangeListener(new GoogleMap.OnCameraChangeListener() {
@Override
public void onCameraChange(CameraPosition cameraPosition) {
if (marker != null) {
marker.remove();
mClusterManager.clearItems();
}
LatLng latLng = cameraPosition.target;
appSharedPreference.setLatitude(String.valueOf(latLng.latitude));
appSharedPreference.setLongitude(String.valueOf(latLng.longitude));
// marker = map.addMarker(new MarkerOptions().position(latLng));
submitData();
pDialouge.hide();
}
});
mClusterManager.setRenderer(new MyClusterRenderer(getActivity(), map, mClusterManager));
map.setOnMarkerClickListener(mClusterManager);
mClusterManager
.setOnClusterClickListener(new ClusterManager.OnClusterClickListener<MyItem>() {
@Override
public boolean onClusterClick(Cluster<MyItem> cluster) {
clickedCluster = cluster;
return false;
}
});
mClusterManager
.setOnClusterItemClickListener(new ClusterManager.OnClusterItemClickListener<MyItem>() {
@Override
public boolean onClusterItemClick(MyItem item) {
clickedClusterItem = item;
return false;
}
});
map.setonCamerachenglistener(新的GoogleMap.onCamerachenglistener(){
@凌驾
CameraChange上的公共无效(CameraPosition CameraPosition){
如果(标记!=null){
marker.remove();
mClusterManager.clearItems();
}
LatLng LatLng=cameraPosition.target;
setLatitude(String.valueOf(latLng.latitude));
appSharedReference.setLongitude(String.valueOf(latLng.longitude));
//marker=map.addMarker(新MarkerOptions().position(latLng));
submitData();
pDialouge.hide();
}
});
setRenderer(新的MyClusterRenderer(getActivity(),map,mClusterManager));
setOnMarkerClickListener(mClusterManager);
McClusterManager
.setOnClusterClickListener(新的ClusterManager.OnClusterClickListener(){
@凌驾
公共布尔onClusterClick(集群){
单击群集=群集;
返回false;
}
});
McClusterManager
.setOnClusterItemClickListener(新的ClusterManager.OnClusterItemClickListener(){
@凌驾
公共布尔onClusterItemClick(MyItem){
单击ClusterItem=项目;
返回false;
}
});
看看这里的答案:你能告诉我为什么cameraChangeListener在Android的tapping集群上运行吗谢谢,它帮了很多忙