使用MyLocationNewOverlay可以在地图视图中显示用户的当前位置。
mylocation = new MyLocationNewOverlay(mapView);
mylocation.enableMyLocation();
mylocation.enableFollowLocation();
IMyLocationProvider s= mylocation.getMyLocationProvider();
mylocation.getMyLocation();
mapView.getOverlays().add(mylocation);
为了创建一条路线,我尝试通过mylocation.getMyLocation /mylocation.getLastFix()获取用户的当前位置,但是两者都返回null。如何获取geopoint /纬度长点?
最佳答案
如果您使用mylocation.getMyLocation()
并返回了null
,那是因为您没有花足够的时间查找您的位置。
如果我们在这里查看源代码:
public GeoPoint getMyLocation() {
if (mLocation == null) {
return null;
} else {
return new GeoPoint(mLocation);
}
}
仅仅因为您的位置实际上为空而得到空,
mylocation.getLastFix()
也是如此public Location getLastFix() {
return mLocation;
}
确保至少等待
runOnFirstFix
结束,然后再尝试获取位置。另外,该行:
IMyLocationProvider s= mylocation.getMyLocationProvider();
在这种情况下是没有必要的,除此之外,您应该走在正确的轨道上。