2012-01-23 25 views
1

我想在我的地圖上顯示不同的標記。我能找到的一個解決方案是爲每個標記定義一個新的覆蓋。但後來我發現可以用有沒有可能使用OverlayItem.setMarker()而沒有陰影?

OverlayItme.set Marker(Drawable marker);

使用單一的覆蓋。它可以很好地工作,但是標記是用陰影繪製的,我想顯示沒有陰影的標記圖標,我的原始圖片沒有陰影,我想按原樣繪製它。可能嗎? 這是我怎麼現在做的:

markerpic = this.getResources().getDrawable(R.drawable.icon_map); 
    markerpic.setBounds(0, 0, markerpic.getIntrinsicWidth(), markerpic.getIntrinsicHeight()); 

    GeoPoint gp = new GeoPoint((int)(lat*1E6), (int)(lng*1E6)); 

    overlayitem = new OverlayItem(gp, "Title", "Message"); 
     overlayitem.setMarker(markerpic); 
     myoverlay.adOverlay(overlayitem); 
     mapOverlay.add(myoverlay); 

回答

6

我創建延伸ItemizedOverlay 並覆蓋這在我的類去除陰影的子類:

public void draw(Canvas canvas, MapView mapView, boolean shadow) 
    { 
     if(!shadow) 
     { 
      super.draw(canvas, mapView, false); 
     } 
    }