为了账号安全,请及时绑定邮箱和手机立即绑定

改变 OSMDroid 的 map tile provider 到默认的形式

改变 OSMDroid 的 map tile provider 到默认的形式

凤凰求蛊 2019-03-19 22:19:37
在程序中,我根据用户在参数中的选择设置tiles 的源代码,用户只有2中选择-UMP和默认,例如 OpenStreetMaps。下面的代码是如何从默认的情形下改变 tiles的源代码。SharedPreferences prefs = PreferenceManager         .getDefaultSharedPreferences(getBaseContext()); if (prefs.getString("map_source_preference", "osm") == "ump") {     final MapTileProviderBasic tileProvider = new MapTileProviderBasic(             getApplicationContext());     final ITileSource tileSource = new XYTileSource("UMP Tiles", null,             3, 14, 256, ".png", "http://tiles.ump.waw.pl/ump_tiles/");     tileProvider.setTileSource(tileSource);     final TilesOverlay tilesOverlay = new TilesOverlay(tileProvider,             this.getBaseContext());     mapView.getOverlays().add(tilesOverlay); }现在的问题是如何设置 provider 返回到OSMDroid 的默认格式?这个例子中的tileProvider.detach()运行了吗?
查看完整描述

1 回答

?
守着星空守着你

TA贡献1799条经验 获得超8个赞

当你改变 ITileSource 时,不是想创建一个新的 TilesOverlay。
你可以调用 mapView.setTileSource(tileSource);那样可以申请新的 tile source 到现有的TilesOverlay。
如果你想返回到默认的 tile source,你可以调用 mapView.setTileSource(TileSourceFactory.DEFAULT_TILE_SOURCE);

查看完整回答
反对 回复 2019-04-30
  • 1 回答
  • 0 关注
  • 644 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信