我目前有一个Android Mapview,它显示OverlayItem的一个非常基本的子类,带有一些自定义属性:
public class StreetLocation extends OverlayItem{
public int id;
public float latitude, longitude;
public float distance;
boolean isHouse = false;
boolean hasSnacks = false;
... and so on, with a bunch of getters/setters
}
通过建立一个坐标跨度区域(基于用户的地图视图)从数据库中检索这些内容,而不会出现任何问题。
现在我在我的UI上添加了一些简单的Button
,我希望用它来切换标记isHouse
和/或hasSnacks
的显示。目前,我能想到的唯一方法就是完全清除所有标记的MapView,然后通过过滤StreetLocation
数组,只将我想要的标记添加到MapView中。我从我的数据库中返回用户视图。
我的问题是,这似乎有很多工作 - 有没有其他方法可以简单地隐藏或切换标记的可视化表示而不清除整个地图,因为无论属性如何都会检索所有标记? / p>
如果这有点长,我很抱歉,如果需要,我会很乐意解释更多/邮政编码。