Android中onMarkerClick和onClusterItemClick事件的区别
Posted
技术标签:
【中文标题】Android中onMarkerClick和onClusterItemClick事件的区别【英文标题】:Differenciate between onMarkerClick and onClusterItemClick event in Android 【发布时间】:2015-07-04 04:28:39 【问题描述】:我正在使用谷歌地图 v2,其中 1000 多个标记是从网络服务中获取的。所以出于这个原因,我正在使用地图聚类。我正在显示信息窗口onMarkerClick
,但问题是当用户单击集群时,它会显示信息窗口,因为触发了onMarkerClick
事件。单击标记簇时,我想进一步放大。有onClusterItemClick
事件,但它不适用于onMarkerClick
。任何可行的解决方案都提前表示赞赏。
谢谢
【问题讨论】:
【参考方案1】:我找到了这个问题的答案。实际上,您可以根据您的要求在ClusterManager
对象上使用以下两个侦听器,例如mClusterManager
:
1- setOnClusterClickListener
2- setOnClusterItemClickListener
但在此之前你必须设置这个:
map.setOnMarkerClickListener(mClusterManager);
【讨论】:
setOnClusterClickListener
和 setOnClusterItemClickListener
有什么不同?
setOnClusterClickListener 将在单击一组由单个集群图标表示的标记时触发。如果集群中的任何特定标记被按下,setOnClusterItemClickListener 将触发【参考方案2】:
我认为您可以检查当前缩放级别,并且仅在当前缩放级别小于数字时执行正常的onMarkerClick
项目,或者您制作某种标志来记住当前项目是否已聚集。
【讨论】:
这不起作用,因为地图上也可能有非聚集标记。以上是关于Android中onMarkerClick和onClusterItemClick事件的区别的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 java/android 从 Firebase ONCE 读取数据?
我的Android进阶之旅Android Studio 中 使用git提交代码报错:Can‘t commit changes from multiple changelists at once(代码片
Unity Android 错误 call to OpenGL ES API with no current context (logged once per thread) 解决办法
Android 使用WebView报错:Using WebView from more than one process at once with the same data directory is