【发布时间】:2012-01-16 14:52:58
【问题描述】:
我正在使用 osmdroid,我想在运行时更改 TileSource(通过菜单项)。例如,我可以在 OSM TileSource 和 GoogleTileSource 之间切换。
问题:一切正常,但是当我在 mapview 在后台加载 Tile 时更改 TileSource 时,它会更改 TileSource,但一两个瓷砖来自之前的 TileSource。所以我看到了一个混合 MapView 与 OSMTiles 和一两个 GoogleTiles。
每次更改 TileSource 后都会清除 tileCache。但是后台加载的瓦片此时不在缓存中,所以他把这个瓦片放到缓存中,清除后。
有解决此问题的想法吗?都是基于osmdroid,我只用setTileSource(ITileSource)
感谢和问候
【问题讨论】:
-
您从哪里获得 Google 磁贴?我不认为这是 TileSourceFactory 常量中的一个选项。
-
@NickT:我猜他正在切换 mapview 活动(而不是 tilesource)
-
不不,我只切换 TileSources 并为 Google 创建了我自己的 TileSource ;-)
-
一个有趣的方法,问题是谷歌许可证中没有缓存的原因。我有一个框架,里面有一个谷歌和一个 Osmroid 视图。
-
我在教程中读到过,不允许离线使用谷歌地图。但他告诉它允许缓存,所以他缓存了几年的瓷砖:) datamoil.blogspot.com/2011/05/…
标签: android tiles osmdroid openstreetmap