【发布时间】:2016-03-12 00:28:13
【问题描述】:
Google Maps API 似乎在后台做了一些魔法,阻止 ClusterItems 被更新,除非他们收到了位置更新。
不幸的是,这意味着如果我想在不同的缩放级别更改标记的外观,在标记接收到新的位置数据之前不会刷新外观。
有没有办法解决这个问题?
我目前正在以这种方式刷新地图:
HashSet<customClusterItem> limitedDisplaySet = new HashSet<>();
mClusterManager.clearItems();
//...build limitedDisplaySet
mClusterManager.addItems(limitedDisplaySet);
mClusterManager.cluster();
【问题讨论】:
-
这个问题可以通过 onBeforeClusterItemRendered 方法解决。请参考Refreshing makers (ClusterItems) in Google Maps v2 for Android和MarkerOptions。
-
@adjuremods 我已经在我的
CustomClusterRenderer中实现了它。不幸的是,标记只有在之前没有被绘制过时才会被重绘。否则,它们只是被动画到一个新的位置。
标签: android google-maps