summaryrefslogtreecommitdiff
path: root/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/style/RuntimeStyleActivity.java
diff options
context:
space:
mode:
authorTobrun <tobrun@mapbox.com>2017-04-19 15:05:08 +0200
committerGitHub <noreply@github.com>2017-04-19 15:05:08 +0200
commit553ec88dc0350b9b034a0370300653d94f092382 (patch)
tree291aaa4e26979090a5b233d69e9cba557f0ab5f2 /platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/style/RuntimeStyleActivity.java
parent9c1150cfe9c1d7c4992e421695ce7c83a4840339 (diff)
downloadqtlocation-mapboxgl-553ec88dc0350b9b034a0370300653d94f092382.tar.gz
[android] - expose source layer identifier (#8709)
Diffstat (limited to 'platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/style/RuntimeStyleActivity.java')
-rw-r--r--platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/style/RuntimeStyleActivity.java23
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");