我有一个osmdroid地图,我想从MOBAC的osmdroid zip或gemf文件中加载离线图块.我调查了它,无处不在我说它只是把它放在sdcard / osmdroid中.但它不起作用,我需要在代码中改变一些东西吗?
public class Map extends Activity {
private IMapView mMapView;
private static IMapController mMapController;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_map);
mMapView = (MapView) findViewById(R.id.mapview);
((MapView) mMapView).setBuiltInZoomControls(true);
mMapController = mMapView.getController();
mMapController.setZoom(13);
GeoPoint geoPecs = new GeoPoint(46.070833,18.233056);
mMapController.setCenter(geoPecs);
mProvider = new MapTileProviderBasic(getApplicationContext());
mCustomTileSource = new XYTileSource("Turaterkep", null, 13, 15, 256, ".png", "http://users.atw.hu/perzsa/map/Turaterkep/");
mProvider.setTileSource(mCustomTileSource);
mTilesOverlay = new TilesOverlay(mProvider,this.getBaseContext());
mMapView.getOverlays().add(mTilesOverlay);
更新:
我设法从在线加载瓷砖,包含的示例到osmdroid,我也更新了代码,我想我必须从这个示例开始,也许我可以从localhost加载?生病检查
图片:
http://i.stack.imgur.com/CoZT1.png
解决方法:
我遇到了同样的问题,我使用Mapnik的在线图块解决了这个问题.这样,我的应用程序在我的移动设备中创建了路径(phone / osmdroid / tiles / Mapnik).
mMapView.setTileSource(TileSourceFactory.Mapnik);
您还可以通过将其添加到xml文件和mapview中来添加tilesouce:
tilesource="Mapnik"
别忘了通过添加以下内容来指定您不希望应用程序下载数据:
mMapView.setUseDataConnection(false);
完成后,您可以让应用程序使用离线磁贴,只需按照以下指南操作:http://www.haakseth.com/?p=30