这是我的课程:
http://wklej.org/id/840949/ - ShopMapActivity
http://wklej.org/id/840950/ - CustomMapView
而我正在尝试根据缩放绘制不同数量的点。因此,如果缩放低于9,则应仅绘制代表引用的点。当您放大并且缩放级别高于9时,它应绘制此区域中的所有点。
当活动开始时,只有代表城市的点(这是好的),当我放大到9个缩放级别时,该区域会出现额外的点(这也很好),但当我从该状态缩小时,额外的点不要即使我正在用以下地图清理地图,也不会消失:
mapOverlays.clear();
mapView.getOverlays().clear();
mapView.invalidate();
mapView.postInvalidate();
答案 0 :(得分:1)
您忘了清除itemizedOverlay。您正在从活动的ovelays列表中删除它,但是然后重复向itemizedOverlay添加相同的点(它们已经在那里)并且您将它添加到活动的叠加层。
底线,只需在代码中添加以下内容:
itemizedoverlay.clear();
行后:
mapView.getOverlays().clear();
如果你没有在itemizedOvelay中创建方法clear(),那么就该开始了。
祝你好运。