2013-04-29 58 views
0

我用的Android osmdroid overlayItem自来水偏移

+android 4.2 
+osmdroid-android-3.0.9 
+sherlock action bar 

我需要在地图上显示的项目。点击此项目显示对话框。但在使用偏移量引发的ItemSingleTapUp上遇到了麻烦。

osmapview = (MapView) findViewById(R.id.osmapview); 
osmapview.setBuiltInZoomControls(true); 
osmapview.setTileSource(TileSourceFactory.MAPNIK); 
osmapview.setClickable(false); 
final MapController mc = osmapview.getController(); 
mc.setZoom(14); 

ArrayList<OverlayItem> overlayItems = new ArrayList<OverlayItem>(); 
CustomOverLay overlays = new CustomOverLay(overlayItems, getResources().getDrawable(R.drawable.marker96)); 
GeoPoint p = new GeoPoint(48.427677, 35.239871); 
OverlayItem overlayItem = new OverlayItem("Title1", "Description1", p); 
overlays.addItem(overlayItem); 



public class CustomOverLay extends ItemizedIconOverlay<OverlayItem> { 
    public CustomOverLay(ArrayList<OverlayItem> overlayItems, Drawable drawable) { 
    super(overlayItems, drawable, new OnItemGestureListener<OverlayItem>() { 

      @Override 
    public boolean onItemSingleTapUp(final int index, final OverlayItem item) { 
       L.e("++" + 1); 
       return false; 
      } 

      @Override 
      public boolean onItemLongPress(final int index, final OverlayItem item) { 
       L.e("++" + 2); 
       return false; 
      }}, 
      new DefaultResourceProxyImpl(getApplicationContext())); 
    } 

@Override 
protected boolean onSingleTapUpHelper(int index, OverlayItem item, MapView mapView) { 
     L.e("+ " + item.mTitle); 
     return super.onSingleTapUpHelper(index, item, mapView); 
    } 
} 

地图drawed - 确定

标记drawed - 上标记OK

水龙头 - 失败

如果标记的龙头底部(最底层) - 确定

是什么原因的抵消?

回答

2

关闭硬件加速您的清单或代码。有关如何执行此操作的示例,请参阅示例应用程序。 3.0.10中有更好的硬件加速支持。

+0

这仍然是导致偏移标记的4.1。+版本的问题。 – OceanLife 2014-05-13 00:22:42

0

这是一个在错误osmdroid-Android的3.0.9

使用osmdroid-Android的3.0.8

Issue