Java osmdroid上的多个平铺层

Java osmdroid上的多个平铺层,java,android,osmdroid,Java,Android,Osmdroid,目前,我正在OSMdroid底图上加载一个具有 final MapTileProviderBasic tileProvider = new MapTileProviderBasic(getApplicationContext()); final ITileSource tileSource = new XYTileSource("MyCustomTiles", null, 1, 16, 256, ".png", "http://a.url.to/cus

目前,我正在OSMdroid底图上加载一个具有

final MapTileProviderBasic tileProvider = 
    new MapTileProviderBasic(getApplicationContext());
final ITileSource tileSource = 
    new XYTileSource("MyCustomTiles", null, 1, 16, 256, ".png",
            "http://a.url.to/custom-tiles/");
tileProvider.setTileSource(tileSource);
final TilesOverlay tilesOverlay = 
    new TilesOverlay(tileProvider, this.getBaseContext());
tilesOverlay.setLoadingBackgroundColor(Color.TRANSPARENT);
osmv.getOverlays().add(tilesOverlay);
是否可以在底图上渲染多个数据层,或者一次只能显示一个数据层?
我找到了,但没有找到一个示例OSMdroid代码一次处理多个
tileSources

是的,当然可以。您只需在地图上添加另一个平铺。从列表的最低索引(=0)开始连续绘制覆盖(也为平铺覆盖)。 下面是一个例子:

//create the first tilesOverlay
final MapTileProviderBasic tileProvider = new MapTileProviderBasic(getApplicationContext());
final ITileSource tileSource = new XYTileSource("MyCustomTiles", null, 1, 16, 256, ".png",
        "http://a.url.to/custom-tiles/");
tileProvider.setTileSource(tileSource);
final TilesOverlay tilesOverlay = new TilesOverlay(tileProvider, this.getBaseContext());
tilesOverlay.setLoadingBackgroundColor(Color.TRANSPARENT);

//create the second one
final MapTileProviderBasic anotherTileProvider = new MapTileProviderBasic(getApplicationContext());
final ITileSource anotherTileSource = new XYTileSource("MyCustomTiles", null, 1, 16, 256, ".png",
        "http://a.secondurl.to/custom-tiles/");
anotherTileProvider.setTileSource(anotherTileSource);
final TilesOverlay secondTilesOverlay = new TilesOverlay(anotherTileProvider, this.getBaseContext());
secondTilesOverlay.setLoadingBackgroundColor(Color.TRANSPARENT);

// add the first tilesOverlay to the list
osmv.getOverlays().add(tilesOverlay);

// add the second tilesOverlay to the list
osmv.getOverlays().add(secondTilesOverlay);

根据我的经验,osmdroid库中的层有点占用内存,这意味着如果添加超过2或3层,您将很快遇到一些问题(OutOfMemory异常)。如何更改
BaseLayer