2017-04-03 33 views
0

我期望的目標是以mbtiles格式添加TileOverlay並以KML格式渲染一些Gemetric對象(主要是線條和多邊形)。如何管理Android gmaps疊加順序

問題是MapBox地圖覆蓋了我的KML多邊形,我不知道如何管理渲染順序。

通過代碼我試圖先加載地圖上的mbtile,然後KML多邊形,沒有運氣。

附上的代碼進行進一步的考慮

 TileOverlayOptions opts = new TileOverlayOptions(); 
     MapBoxOfflineTileProvider provider = new MapBoxOfflineTileProvider("/path/to/file.mbtiles"); 
     opts.tileProvider(provider); 
     mbTileOverlay = mMap.addTileOverlay(opts); 

     KmlLayer layer = null; 
     try { 
      layer = new KmlLayer(mMap, R.raw.mypolygons, mContext); 
      layer.addLayerToMap(); 
      } catch (XmlPullParserException e) { 
      e.printStackTrace(); 
     } catch (IOException e) { 
      e.printStackTrace(); 
     } 

感謝您的幫助

這裏是一個link的KML應用於您的KML定義

+0

你能分享一個例子KML? – antonio

+0

鏈接到kml提供,謝謝 – Fabio

回答

1

多邊形沒有drawOrder屬性集(請參閱this change),因此zIndex設置爲默認值(0)。

當你不定義爲您的一個zIndexMapBoxOfflineTileProvider它也默認爲0嘗試定義您TileOverlayOptions這樣的:

TileOverlayOptions opts = new TileOverlayOptions(); 
opts.zIndex(-1); 
+0

非常感謝的人,你救了我從一些頭抓撓:D – Fabio