如何在osmdroid中显示当前位置指针?
问题描述:
我想使用osmdroid显示当前位置指针。如何在osmdroid中显示当前位置指针?
getController().setCenter(new GeoPoint(location));
此代码不显示指针。那么是否有内置的osmdroid,因为它是谷歌地图?
(我无法找到Android手机一个体面的截图,但这里是为iPhone指针http://kaputik.com/?p=482为例)
答
您需要添加MyLocationOverlay类似下面的东西。
mMyLocationOverlay = new MyLocationOverlay(this, mOsmv,
mResourceProxy);
mMyLocationOverlay.disableMyLocation(); // not on by default
mMyLocationOverlay.disableCompass();
mMyLocationOverlay.disableFollowLocation();
mMyLocationOverlay.setDrawAccuracyEnabled(true);
mMyLocationOverlay.runOnFirstFix(new Runnable() {
public void run() {
mOsmvController.animateTo(mMyLocationOverlay
.getMyLocation());
}
});
mOsmOverlays.add(mMyLocationOverlay);
答
SetCenter将只设置地图位置特定位置。它不会添加任何指向中心的指针。您可以使用mapview.addView或mapView的addoverlay。 Osmdroid提供了与MapView几乎相同的功能。
+0
你是说它没有内置? – 2012-01-11 07:05:41
+0
是的,arcone,他说这是不是内置。 – 2012-09-25 10:49:52
感谢您的帮助队友:) – 2012-01-23 07:38:22
你可以简单介绍一下你的代码什么是mOsmvController和mOsmOverlays? – GaneshKumar 2014-02-26 10:56:10
您可以通过执行mapView.getController()和mapView.getOverlays() – tomasbarrios 2014-12-12 19:22:23