如果要自定义瓦片数据源,新建一个类实现ITileSource,替换下面这句即可
final ITileSource tileSource = new XYTileSource("FietsRegionaal", 3, 18, 256, ".png",new String[] { "http://overlay.openstreetmap.nl/openfietskaart-rcn/" }); tileProvider.setTileSource(tileSource);final TilesOverlay tilesOverlay = new TilesOverlay(tileProvider, this.getContext());tilesOverlay.setLoadingBackgroundColor(Color.TRANSPARENT);tilesOverlay.setLoadingLineColor(Color.TRANSPARENT);tilesOverlay.setLoadingDrawable(null);//这句非常重要,官方demo中没有提到这一点,不然下载下来的不是指定图源的瓦片mMapView.setTileProvider(tileProvider);mMapView.getOverlays().add(tilesOverlay);然后其他的就和demo中一样了,不多说
//写入器writer = new SqliteArchiveTileWriter(outputName);//下载管理器mgr = new CacheManager(mMapView, writer);//待下载瓦片数量int tilecount = mgr.possibleTilesInArea(bb, zoommin, zoommax);//开始下载 mgr.downloadAreaAsync()