osmdroid没有居中/注册GeoPoint坐标

时间:2014-12-04 00:56:12

标签: android android-studio openstreetmap osmdroid geopoints

除非我不正确地理解这一点,否则要在给定点周围初始化osmdroid,您将执行以下操作:

    map = (MapView) findViewById(R.id.mapview);
    map.setTileSource(TileSourceFactory.MAPNIK);
    MapController mapController = (MapController)map.getController();

    GeoPoint startPoint = new GeoPoint(52370816, 9735936);
    mapController.animateTo(startPoint);
    map.setBuiltInZoomControls(true);
    mapController.setZoom(2);
    map.setUseDataConnection(true);
    map.setMultiTouchControls(true);

然而,当我运行它时,地图sorta会做任何想做的事情。它并不以给定的GeoPoint为中心。改变这些数字似乎无能为力。我错过了什么吗?

我的XML文件按照我的权限按照教程顺序排列。

2 个答案:

答案 0 :(得分:3)

这是在onCreate中设置地图视图时发生的已知错误: https://github.com/osmdroid/osmdroid/issues/22

问题已关闭,因为假定在源头中已修复,但它仍然没有在4.2 osmdroid版本中修复。

一旦绘制了mapview,

setCenter就可以正常工作了。

在osmdroid项目问题中可以找到各种解决方法。

答案 1 :(得分:0)

自2014-06-24 Osmdroid有此

MapView.addOnFirstLayoutListener(new OnFirstLayoutListener() { ...});

可用于设置初始缩放,mapcenter,....