2012-01-23 26 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); 
     } 
    }