diff options
author | Tobrun <tobrun.van.nuland@gmail.com> | 2018-01-26 15:32:16 +0100 |
---|---|---|
committer | Tobrun <tobrun@mapbox.com> | 2018-02-13 12:53:18 +0100 |
commit | 143c346d9d809a93d802dc087cffe517659e1077 (patch) | |
tree | 948ed507b005a1fead1f33bc0d2c77d7304d7ed9 /platform/android/MapboxGLAndroidSDKTestApp/src | |
parent | 734b420649392fd7e35e808e9a5053b9c38b5adc (diff) | |
download | qtlocation-mapboxgl-143c346d9d809a93d802dc087cffe517659e1077.tar.gz |
[android] - translucent surface on TextureView
Diffstat (limited to 'platform/android/MapboxGLAndroidSDKTestApp/src')
9 files changed, 180 insertions, 2 deletions
diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/main/AndroidManifest.xml b/platform/android/MapboxGLAndroidSDKTestApp/src/main/AndroidManifest.xml index 2d6efc0d84..9e64e03e11 100644 --- a/platform/android/MapboxGLAndroidSDKTestApp/src/main/AndroidManifest.xml +++ b/platform/android/MapboxGLAndroidSDKTestApp/src/main/AndroidManifest.xml @@ -760,6 +760,17 @@ android:value="@string/category_textureview"/> </activity> <activity + android:name=".activity.textureview.TextureViewTransparentBackgroundActivity" + android:description="@string/description_textureview_transparent" + android:label="@string/activity_textureview_transparent"> + <meta-data + android:name="@string/category" + android:value="@string/category_textureview"/> + <meta-data + android:name="android.support.PARENT_ACTIVITY" + android:value=".activity.FeatureOverviewActivity"/> + </activity> + <activity android:name=".activity.textureview.TextureViewAnimationActivity" android:description="@string/description_textureview_animate" android:label="@string/activity_textureview_animate"> diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/textureview/TextureViewResizeActivity.java b/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/textureview/TextureViewResizeActivity.java index 788003d867..69bab45ce0 100644 --- a/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/textureview/TextureViewResizeActivity.java +++ b/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/textureview/TextureViewResizeActivity.java @@ -95,4 +95,4 @@ public class TextureViewResizeActivity extends AppCompatActivity { mapView.onLowMemory(); } -} +}
\ No newline at end of file diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/textureview/TextureViewTransparentBackgroundActivity.java b/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/textureview/TextureViewTransparentBackgroundActivity.java new file mode 100644 index 0000000000..15da018b0e --- /dev/null +++ b/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/textureview/TextureViewTransparentBackgroundActivity.java @@ -0,0 +1,94 @@ +package com.mapbox.mapboxsdk.testapp.activity.textureview; + +import android.os.Bundle; +import android.support.v7.app.AppCompatActivity; +import android.widget.ImageView; + +import com.mapbox.mapboxsdk.maps.MapView; +import com.mapbox.mapboxsdk.maps.MapboxMap; +import com.mapbox.mapboxsdk.testapp.R; +import com.mapbox.mapboxsdk.testapp.utils.ResourceUtils; + +import java.io.IOException; + +import timber.log.Timber; + +/** + * Example showcasing how to create a TextureView with a transparent background. + */ +public class TextureViewTransparentBackgroundActivity extends AppCompatActivity { + + private MapView mapView; + private MapboxMap mapboxMap; + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + setContentView(R.layout.activity_textureview_transparent); + setupBackground(); + setupMapView(savedInstanceState); + } + + private void setupBackground() { + ImageView imageView = (ImageView) findViewById(R.id.imageView); + imageView.setImageResource(R.drawable.water); + imageView.setScaleType(ImageView.ScaleType.FIT_XY); + } + + private void setupMapView(Bundle savedInstanceState) { + mapView = (MapView) findViewById(R.id.mapView); + mapView.onCreate(savedInstanceState); + mapView.getMapAsync(map -> { + mapboxMap = map; + + try { + map.setStyleJson(ResourceUtils.readRawResource(getApplicationContext(), R.raw.no_bg_style)); + } catch (IOException exception) { + Timber.e(exception); + } + }); + } + + @Override + protected void onStart() { + super.onStart(); + mapView.onStart(); + } + + @Override + protected void onResume() { + super.onResume(); + mapView.onResume(); + } + + @Override + protected void onPause() { + super.onPause(); + mapView.onPause(); + } + + @Override + protected void onStop() { + super.onStop(); + mapView.onStop(); + } + + @Override + protected void onSaveInstanceState(Bundle outState) { + super.onSaveInstanceState(outState); + mapView.onSaveInstanceState(outState); + } + + @Override + protected void onDestroy() { + super.onDestroy(); + mapView.onDestroy(); + } + + @Override + public void onLowMemory() { + super.onLowMemory(); + mapView.onLowMemory(); + } + +}
\ No newline at end of file diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xxxhdpi/water.jpg b/platform/android/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xxxhdpi/water.jpg Binary files differnew file mode 100644 index 0000000000..71b758b490 --- /dev/null +++ b/platform/android/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xxxhdpi/water.jpg diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/main/res/layout/activity_textureview_resize.xml b/platform/android/MapboxGLAndroidSDKTestApp/src/main/res/layout/activity_textureview_resize.xml index 2baa3d39dd..b00076e779 100644 --- a/platform/android/MapboxGLAndroidSDKTestApp/src/main/res/layout/activity_textureview_resize.xml +++ b/platform/android/MapboxGLAndroidSDKTestApp/src/main/res/layout/activity_textureview_resize.xml @@ -7,7 +7,7 @@ android:layout_height="match_parent" android:orientation="vertical"> - + <com.mapbox.mapboxsdk.maps.MapView android:id="@+id/mapView" android:layout_width="match_parent" diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/main/res/layout/activity_textureview_transparent.xml b/platform/android/MapboxGLAndroidSDKTestApp/src/main/res/layout/activity_textureview_transparent.xml new file mode 100644 index 0000000000..3b9ee71359 --- /dev/null +++ b/platform/android/MapboxGLAndroidSDKTestApp/src/main/res/layout/activity_textureview_transparent.xml @@ -0,0 +1,28 @@ +<?xml version="1.0" encoding="utf-8"?> +<android.support.design.widget.CoordinatorLayout + xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:app="http://schemas.android.com/apk/res-auto" + android:id="@+id/coordinator_layout" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:orientation="vertical"> + + <ImageView + android:id="@+id/imageView" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:contentDescription="@null"/> + + <com.mapbox.mapboxsdk.maps.MapView + android:id="@+id/mapView" + android:layout_width="match_parent" + android:layout_height="match_parent" + app:mapbox_cameraTargetLat="48.507879" + app:mapbox_cameraTargetLng="8.363795" + app:mapbox_cameraZoom="2" + app:mapbox_renderTextureMode="true" + app:mapbox_renderTextureTranslucentSurface="true" + app:mapbox_styleUrl="mapbox://styles/agerace-globant/cja02de7193b02suvy4gpbt2c"/> + +</android.support.design.widget.CoordinatorLayout> + diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/main/res/raw/no_bg_style.json b/platform/android/MapboxGLAndroidSDKTestApp/src/main/res/raw/no_bg_style.json new file mode 100644 index 0000000000..964eefc319 --- /dev/null +++ b/platform/android/MapboxGLAndroidSDKTestApp/src/main/res/raw/no_bg_style.json @@ -0,0 +1,43 @@ +{ + "version": 8, + "name": "Land", + "metadata": { + "mapbox:autocomposite": true, + }, + "sources": { + "composite": { + "url": "mapbox://mapbox.mapbox-terrain-v2", + "type": "vector" + } + }, + "sprite": "mapbox://sprites/mapbox/mapbox-terrain-v2", + "glyphs": "mapbox://fonts/mapbox/{fontstack}/{range}.pbf", + "layers": [ + { + "layout": { + "visibility": "visible" + }, + "type": "fill", + "source": "composite", + "id": "admin", + "paint": { + "fill-color": "hsl(359, 100%, 50%)", + "fill-opacity": 1 + }, + "source-layer": "landcover" + }, + { + "layout": { + "visibility": "visible" + }, + "type": "fill", + "source": "composite", + "id": "layer-0", + "paint": { + "fill-opacity": 1, + "fill-color": "hsl(359, 100%, 50%)" + }, + "source-layer": "Layer_0" + } + ] +}
\ No newline at end of file diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/main/res/values/descriptions.xml b/platform/android/MapboxGLAndroidSDKTestApp/src/main/res/values/descriptions.xml index e867046c80..51182f958c 100644 --- a/platform/android/MapboxGLAndroidSDKTestApp/src/main/res/values/descriptions.xml +++ b/platform/android/MapboxGLAndroidSDKTestApp/src/main/res/values/descriptions.xml @@ -67,6 +67,7 @@ <string name="description_textureview_debug">Use TextureView to render the map</string> <string name="description_textureview_resize">Resize a map rendered on a TextureView</string> <string name="description_textureview_animate">Animate a map rendered on a TextureView</string> + <string name="description_textureview_transparent">Enable a transparent surface on TextureView</string> <string name="description_grid_source">Example Custom Geometry Source</string> <string name="description_local_glyph">Suzhou using Droid Sans for Chinese glyphs</string> <string name="description_hillshade">Example raster-dem source and hillshade layer</string> diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/main/res/values/titles.xml b/platform/android/MapboxGLAndroidSDKTestApp/src/main/res/values/titles.xml index 47fee31c0a..078ccb64a9 100644 --- a/platform/android/MapboxGLAndroidSDKTestApp/src/main/res/values/titles.xml +++ b/platform/android/MapboxGLAndroidSDKTestApp/src/main/res/values/titles.xml @@ -67,6 +67,7 @@ <string name="activity_textureview_debug">TextureView debug</string> <string name="activity_textureview_resize">TextureView resize</string> <string name="activity_textureview_animate">TextureView animation</string> + <string name="activity_textureview_transparent">TextureView transparent background</string> <string name="activity_grid_source">Grid Source</string> <string name="activity_local_glyph">Local CJK glyph generation</string> <string name="activity_hillshade">Hillshade</string> |