2012-02-16 114 views
0

我一直在關注NooYawk MapView示例,並取得了合理的成功。我已經根據一些系統更新消息替換了硬編碼的地址和描述。發生新更新時新標記添加得很好。問題是問題解決後標記不會消失。以編程方式添加和刪除標記

,我會很願意刪除的刷新按鈕被按下的所有標記,因爲他們得到在加回。

任何想法?

以下是有點消毒。

private class SitesOverlay extends ItemizedOverlay<OverlayItem> { 
    private List<OverlayItem> items=new ArrayList<OverlayItem>(); 
    private Drawable marker=null; 

    public SitesOverlay(Drawable marker) { 
     super(marker); 
     this.marker=marker; 

     try { 
      data = getData(); 
     } catch (MalformedURLException e) { 
      // 
     } 

     if (!data.equals("")) { 
          // process data 
      for (Integer i = 0; i < outages.length; i++) { 
       items.add(new OverlayItem(
        getPoint(lat, lng, headerMsg, bodyMsg)); 
      } 
     } 

     populate(); 
    } 

    @Override 
    protected OverlayItem createItem(int i) { 
     return(items.get(i)); 
    } 

    @Override 
    public void draw(Canvas canvas, MapView mapView, 
       boolean shadow) { 
     super.draw(canvas, mapView, false); 
     boundCenterBottom(marker); 
    } 

    @Override 
    protected boolean onTap(int i) { 
     Toast.makeText(getBaseContext(), 
      items.get(i).getSnippet(), 
      Toast.LENGTH_LONG).show(); 
     return(true); 
    } 

    @Override 
    public int size() { 
     return(items.size()); 
    } 
} 

回答

4

上的刷新按鈕點擊mapview.getOverlays().clear();然後在地圖中,加入疊加後開始圖釘你應該mapview.postinvalidate()

+0

感謝ANKIT,即做到了。 – user1174838 2012-02-19 06:55:47

相關問題