0
我有兩個覆蓋圖,一個是(ItemizedOverlay),用於在地圖上放置標記,另一個覆蓋(Overlay),用於繪製從源到目標的路線。關於地圖上標記的變化,在地圖上繪製路線是很好的。但問題在於先前繪製的路線不能抹去繪製新路線。我試過mapView.getOverlays().clear()
。但它正在擦除標記和路線。如何擦除兩個疊加層?
有沒有可能在mapview的兩個定義的疊加中獲得一個疊加對象?
我有兩個覆蓋圖,一個是(ItemizedOverlay),用於在地圖上放置標記,另一個覆蓋(Overlay),用於繪製從源到目標的路線。關於地圖上標記的變化,在地圖上繪製路線是很好的。但問題在於先前繪製的路線不能抹去繪製新路線。我試過mapView.getOverlays().clear()
。但它正在擦除標記和路線。如何擦除兩個疊加層?
有沒有可能在mapview的兩個定義的疊加中獲得一個疊加對象?
mapView.getOverlays()
返回正在使用的列表Overlay
。您可以從該列表中刪除一個Overlay
,而將另一個刪除。
Overlay itemizedOverlay, overlay; //you need an instance of the overlays
List<Overlay> overlays = mapView.getOverlays();
overlays.remove(itemizedOverlay);
或者,如果你知道你的Overlay
的列表索引:
int myOverlayIndex; //the index of your Overlay in the list
List<Overlay> overlays = mapView.getOverlays();
overlays.remove(myOverlayIndex);
感謝NIEK,很好的解決方案。 – Aswin
不客氣:) – nhaarman