diff options
author | Tobrun <tobrun@mapbox.com> | 2017-04-19 15:05:08 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-04-19 15:05:08 +0200 |
commit | 553ec88dc0350b9b034a0370300653d94f092382 (patch) | |
tree | 291aaa4e26979090a5b233d69e9cba557f0ab5f2 /platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox | |
parent | 9c1150cfe9c1d7c4992e421695ce7c83a4840339 (diff) | |
download | qtlocation-mapboxgl-553ec88dc0350b9b034a0370300653d94f092382.tar.gz |
[android] - expose source layer identifier (#8709)
Diffstat (limited to 'platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox')
-rw-r--r-- | platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/style/RuntimeStyleActivity.java | 23 |
1 files changed, 22 insertions, 1 deletions
diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/style/RuntimeStyleActivity.java b/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/style/RuntimeStyleActivity.java index f63ede9bce..f6754af0f9 100644 --- a/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/style/RuntimeStyleActivity.java +++ b/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/style/RuntimeStyleActivity.java @@ -17,12 +17,14 @@ import com.mapbox.mapboxsdk.maps.OnMapReadyCallback; import com.mapbox.mapboxsdk.style.functions.Function; import com.mapbox.mapboxsdk.style.functions.stops.ExponentialStops; import com.mapbox.mapboxsdk.style.functions.stops.Stop; +import com.mapbox.mapboxsdk.style.layers.CircleLayer; import com.mapbox.mapboxsdk.style.layers.FillLayer; import com.mapbox.mapboxsdk.style.layers.Layer; import com.mapbox.mapboxsdk.style.layers.LineLayer; import com.mapbox.mapboxsdk.style.layers.Property; import com.mapbox.mapboxsdk.style.layers.PropertyValue; import com.mapbox.mapboxsdk.style.layers.RasterLayer; +import com.mapbox.mapboxsdk.style.layers.SymbolLayer; import com.mapbox.mapboxsdk.style.layers.TransitionOptions; import com.mapbox.mapboxsdk.style.sources.GeoJsonSource; import com.mapbox.mapboxsdk.style.sources.RasterSource; @@ -41,6 +43,7 @@ import java.io.Reader; import java.io.StringWriter; import java.io.Writer; import java.util.ArrayList; +import java.util.Collections; import java.util.List; import timber.log.Timber; @@ -408,7 +411,25 @@ public class RuntimeStyleActivity extends AppCompatActivity { lineWidth(20f) ); - mapboxMap.addLayer(layer); + // adding layers below "road" layers + List<Layer> layers = mapboxMap.getLayers(); + Layer latestLayer = null; + Collections.reverse(layers); + for (Layer currentLayer : layers) { + if (currentLayer instanceof FillLayer && ((FillLayer) currentLayer).getSourceLayer().equals("road")) { + latestLayer = currentLayer; + } else if (currentLayer instanceof CircleLayer && ((CircleLayer) currentLayer).getSourceLayer().equals("road")) { + latestLayer = currentLayer; + } else if (currentLayer instanceof SymbolLayer && ((SymbolLayer) currentLayer).getSourceLayer().equals("road")) { + latestLayer = currentLayer; + } else if (currentLayer instanceof LineLayer && ((LineLayer) currentLayer).getSourceLayer().equals("road")) { + latestLayer = currentLayer; + } + } + + if (latestLayer != null) { + mapboxMap.addLayerBelow(layer, latestLayer.getId()); + } // Need to get a fresh handle layer = mapboxMap.getLayerAs("terrainLayer"); |