【问题标题】:osmdroid how to use multiple tile provider?osmdroid 如何使用多个 tile 提供程序?
【发布时间】:2014-11-08 06:47:21
【问题描述】:

我想在 osmdroid 中同时使用在线和离线地图切片提供程序。所以我创建了一个扩展MapTileProviderArray 的类MyTileProvider;然后我将我的离线和在线提供商都添加到提供商列表中。戏剧性地基于文档,它应该在第一个提供者上查找,如果它不提供图块并返回 null,则转到另一个提供者来查找图块。
但是在线提供者不适用于离线返回null的地方。这是我的代码:

class MyTileProvider extends MapTileProviderArray
{
private static ITileSource tileSource;

protected MyTileProvider(Context context)
{
    super(tileSource = TileSourceFactory.MAPNIK, new SimpleRegisterReceiver(context));
    // offline tile providing:
    mTileProviderList.add(new OfflineMapTileProvider(context, tileSource));
    // online tile providing:
    mTileProviderList.add(new MapTileDownloader(TileSourceFactory.MAPNIK));

    setTileSource(tileSource);
}
}

任何建议将不胜感激。谢谢。

【问题讨论】:

    标签: android osmdroid


    【解决方案1】:

    试试这个:

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-12-22
      • 2020-04-17
      • 2023-03-26
      • 1970-01-01
      • 2012-08-29
      相关资源
      最近更新 更多