gpt4 book ai didi

java - 将 OSMDroid 的 map 瓦片提供程序更改回默认值

转载 作者:搜寻专家 更新时间:2023-11-01 08:56:05 26 4
gpt4 key购买 nike

在我的应用程序中,我根据用户在首选项中的选择设置(在线)图 block 源(只有 2 个可能的选项 - UMP 和默认值,即 OpenStreetMaps)。以下是我如何将图 block 的源更改为默认值:

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);
}

我的问题是:如何将磁贴提供程序设置回 OSMDroid 的默认值tileProvider.detach() 在这种情况下是否有效?

最佳答案

您不想在更改 ITileSource 时创建新的 TilesOverlay。你可以打电话

mapView.setTileSource(tileSource);

这会将您的新图 block 源应用到现有的 TilesOverlay。

如果你想回到默认的图 block 源,你可以调用

mapView.setTileSource(TileSourceFactory.DEFAULT_TILE_SOURCE);

关于java - 将 OSMDroid 的 map 瓦片提供程序更改回默认值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18816886/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com