Android Google Maps V2 Cluster 隐藏 infoWindow

Posted

技术标签:

【中文标题】Android Google Maps V2 Cluster 隐藏 infoWindow【英文标题】:Android Google Maps V2 Cluster hide infoWindow 【发布时间】:2014-10-01 15:38:41 【问题描述】:

android 项目中,我使用 Google Maps Android API 实用程序库来使用集群解决方案。

在每个单个标记或聚类标记上,一个信息窗口会在触摸所选标记时打开。然后在 infoWindow 上触摸我使用这些事件:

...
mClusterManager.setOnClusterInfoWindowClickListener(this);
mClusterManager.setOnClusterItemInfoWindowClickListener(this);
...

和:

@Override
public void onClusterInfoWindowClick(Cluster<JobItem> cluster) 
    // Here I go to a new fragment A, list of items.



@Override
public void onClusterItemInfoWindowClick(JobItem item) 
    // Here I go to a new fragment B, item's details


当我回到地图(片段 A 或 B 中的 popBackStack)时,infoWindow 总是打开的。当我转到片段 A 或 B 时,我想以编程方式隐藏它们。 我发现可以从标记对象调用方法 hideInfoWindow() 但在这两个事件中标记没有通过参数传递。

知道如何隐藏 infoWindow 吗?

【问题讨论】:

【参考方案1】:

我找到了一个适合我的解决方案,将此代码添加到片段的 onResume 中,它将关闭所有打开的 InfoWindow。

java.util.Collection<Marker> markerCollection = mClusterManager.getMarkerCollection().getMarkers();
for(Marker m : markerCollection)
    if(m.isInfoWindowShown())
    m.hideInfoWindow();

【讨论】:

以上是关于Android Google Maps V2 Cluster 隐藏 infoWindow的主要内容,如果未能解决你的问题,请参考以下文章

Google Maps Android API V2 检查 Google Maps 应用程序是不是被禁用

android google maps v2 在服务中

Google Maps Android v2 中的集群标记

在 Google Maps Android SDK (v2) 中更改建筑物颜色

居中位图标记(Google Maps Android API v2)

可以吗? GMap API V2 中的 clearOverlays() 到 Google Maps API V3?