从对象列表创建/更新地图叠加层

时间:2012-01-16 15:27:09

标签: android overlay itemizedoverlay

我有一个包含类EventOnMap中对象的数组列表。每个对象都有(其中包括)成员变量eventLatitudeeventLongitudeeventType。该列表定期更新(例如插入和删除对象),每秒最多几次。列表不是太大,最多包含50个元素。

在我的mapView上,我现在想根据列表动态创建和更新所有事件的叠加层。该列表表示叠加的状态,这意味着我想在列表中相应的经度/纬度值发生变化时更新叠加位置。

有人知道这样做的方法吗? 提前谢谢!

1 个答案:

答案 0 :(得分:2)

查看ItemizedOverlay类,对于这种情况可能更好,而不是为数组中的每个项创建叠加层。

更大的问题可能是您更新间隔,因为它们非常小。我不知道如何经常更新ItemizedOverlay的性能。因为您无法编辑叠加层上的项目。要更改您必须删除的项目的位置,然后将其再次添加到ItemizedOverlay并调用populate()。但这将再次处理所有项目。

所以也许最好编写一个处理地图上所有项目的自定义叠加层。