我正在开发基于Map的应用程序,我使用群集来安排标记。它工作正常。现在,当我点击标记时,我需要显示一条消息。有没有解决方案?如何在Android中获取群集标记单击事件
mMap.setOnCameraIdleListener(mClusterManager);
mMap.setOnMarkerClickListener(mClusterManager);
我用setOnMarkerClickListener,但我不知道在哪里点击事件将得到
我正在开发基于Map的应用程序,我使用群集来安排标记。它工作正常。现在,当我点击标记时,我需要显示一条消息。有没有解决方案?如何在Android中获取群集标记单击事件
mMap.setOnCameraIdleListener(mClusterManager);
mMap.setOnMarkerClickListener(mClusterManager);
我用setOnMarkerClickListener,但我不知道在哪里点击事件将得到
我不喜欢这样的解决方案..
mClusterManager = new ClusterManager<MyItem>(getActivity(), mMap, new MarkerManager(mMap){
@Override
public boolean onMarkerClick(Marker marker) {
//here will get the clicked marker
return super.onMarkerClick(marker);
}
});
mClusterManager.setRenderer(new CusterCustomMarkerRenderer(context , mMap, mClusterManager, HomeFragment.this));
mClusterManager.setOnClusterClickListener(this);
mMap.setOnMarkerClickListener(mClusterManager);
看起来你已经有了使用标记群集时,以检测标记上的点击事件所做的第一步。接下来,在您致电.setOnMarkerClickListener(mClusterManager)
后,您需要通过实施ClusterManager.OnClusterItemClickListener<T>
接口来注册clusterItemClickListener()
。试试这个:
public class YourActivity extends AppCompatActivity implements
ClusterManager.OnClusterItemClickListener<YourClusterItem> {
....
mMap.setOnCameraIdleListener(mClusterManager);
mMap.setOnMarkerClickListener(mClusterManager);
//set the onClusterItemClickListener
mClusterManager.setOnClusterItemClickListener(this);
//implement the onClusterItemClick interface
@Override
public boolean onClusterItemClick(YourClusterItem clusterItem){
//handle click event
return true;
}
}