我正在研究osmdroid,并尝试做一些非常简单的事情,我曾经在另一个地图框架上做过,但我找不到如何在OSMdroid上做到这一点。 我想在GeoPoint上的地图上放置一个标记。到此为止,这很容易。但我也希望标记图片的中心位于上述地址点上。 现在,使用我的代码,geopoint位于图像的左下角。
怎么做?
答案 0 :(得分:10)
好的,我找到了。所以我在回答我的问题,以防有人遇到同样的问题。
我首先尝试了你的想法woodstock,但我找不到boundCenter方法。
因此,为了使GeoPoint成为drawable的中心,您只需要这样做:
overlayItem.setMarker(YourDrawable);
overlayItem.setMarkerHotspot(HotspotPlace.CENTER);
答案 1 :(得分:0)
之前我没有使用osmdroid,但你通常可以通过设置标记的边界来实现这一点。
例如,使用Google的MapView时,您可以使用以下代码指定您希望标记的中心位于给定的GeoPoint上:
super(boundCenter(defaultMarker));
答案 2 :(得分:0)
如果您正在使用Marker类,那么最好使用下面的代码...
Marker marker = new Marker(map);
marker.setAnchor((float)0.5, (float)0.5); // center icon to geo pint