diff options
Diffstat (limited to 'platform/android/MapboxGLAndroidSDK/src/main/res')
10 files changed, 173 insertions, 0 deletions
diff --git a/platform/android/MapboxGLAndroidSDK/src/main/res/drawable/mapbox_user_bearing_icon.xml b/platform/android/MapboxGLAndroidSDK/src/main/res/drawable/mapbox_user_bearing_icon.xml new file mode 100644 index 0000000000..51bb1161aa --- /dev/null +++ b/platform/android/MapboxGLAndroidSDK/src/main/res/drawable/mapbox_user_bearing_icon.xml @@ -0,0 +1,10 @@ +<vector + xmlns:android="http://schemas.android.com/apk/res/android" + android:width="44dp" + android:height="44dp" + android:viewportHeight="36.0" + android:viewportWidth="36.0"> + <path + android:fillColor="@color/mapbox_location_layer_blue" + android:pathData="M18,0L23,7L13,7L18,0ZM22.8,7C21.33,6.36 19.71,6 18,6C16.29,6 14.67,6.36 13.2,7L22.8,7Z"/> +</vector> diff --git a/platform/android/MapboxGLAndroidSDK/src/main/res/drawable/mapbox_user_icon.xml b/platform/android/MapboxGLAndroidSDK/src/main/res/drawable/mapbox_user_icon.xml new file mode 100644 index 0000000000..42f7d35aa9 --- /dev/null +++ b/platform/android/MapboxGLAndroidSDK/src/main/res/drawable/mapbox_user_icon.xml @@ -0,0 +1,10 @@ +<vector + xmlns:android="http://schemas.android.com/apk/res/android" + android:width="14dp" + android:height="14dp" + android:viewportHeight="14.0" + android:viewportWidth="14.0"> + <path + android:fillColor="@color/mapbox_location_layer_blue" + android:pathData="M7,7m-7,0a7,7 0,1 1,14 0a7,7 0,1 1,-14 0"/> +</vector> diff --git a/platform/android/MapboxGLAndroidSDK/src/main/res/drawable/mapbox_user_icon_shadow.xml b/platform/android/MapboxGLAndroidSDK/src/main/res/drawable/mapbox_user_icon_shadow.xml new file mode 100644 index 0000000000..05e30364d7 --- /dev/null +++ b/platform/android/MapboxGLAndroidSDK/src/main/res/drawable/mapbox_user_icon_shadow.xml @@ -0,0 +1,19 @@ +<layer-list + xmlns:android="http://schemas.android.com/apk/res/android" + android:opacity="opaque"> + <item + android:gravity="center"> + <shape + android:shape="oval"> + <size + android:width="22dp" + android:height="22dp"/> + <gradient + android:centerColor="#40000000" + android:endColor="#00000000" + android:gradientRadius="11dp" + android:startColor="#40000000" + android:type="radial"/> + </shape> + </item> +</layer-list>
\ No newline at end of file diff --git a/platform/android/MapboxGLAndroidSDK/src/main/res/drawable/mapbox_user_icon_stale.xml b/platform/android/MapboxGLAndroidSDK/src/main/res/drawable/mapbox_user_icon_stale.xml new file mode 100644 index 0000000000..ecfb85b2e8 --- /dev/null +++ b/platform/android/MapboxGLAndroidSDK/src/main/res/drawable/mapbox_user_icon_stale.xml @@ -0,0 +1,10 @@ +<vector + xmlns:android="http://schemas.android.com/apk/res/android" + android:width="14dp" + android:height="14dp" + android:viewportHeight="14.0" + android:viewportWidth="14.0"> + <path + android:fillColor="@color/mapbox_location_layer_gray" + android:pathData="M7,7m-7,0a7,7 0,1 1,14 0a7,7 0,1 1,-14 0"/> +</vector> diff --git a/platform/android/MapboxGLAndroidSDK/src/main/res/drawable/mapbox_user_puck_icon.xml b/platform/android/MapboxGLAndroidSDK/src/main/res/drawable/mapbox_user_puck_icon.xml new file mode 100644 index 0000000000..4f13268419 --- /dev/null +++ b/platform/android/MapboxGLAndroidSDK/src/main/res/drawable/mapbox_user_puck_icon.xml @@ -0,0 +1,17 @@ +<vector + xmlns:android="http://schemas.android.com/apk/res/android" + android:width="75dp" + android:height="75dp" + android:viewportHeight="75.0" + android:viewportWidth="75.0"> + <path + android:fillAlpha="0.16" + android:fillColor="#263D57" + android:pathData="M37.5,37.5m-37.5,0a37.5,37.5 0,1 1,75 0a37.5,37.5 0,1 1,-75 0"/> + <path + android:fillColor="#FFFFFF" + android:pathData="M37.5,37.5m-28.5,0a28.5,28.5 0,1 1,57 0a28.5,28.5 0,1 1,-57 0"/> + <path + android:fillColor="@color/mapbox_location_layer_blue" + android:pathData="M39.2,28.46C39.01,27.99 38.54,27.68 38.02,27.69C37.5,27.7 37.02,28.01 36.81,28.49L27.05,45.83C26.83,46.32 26.92,46.89 27.28,47.26C27.65,47.64 28.21,47.75 28.71,47.54L37.07,44.03C37.39,43.89 37.75,43.89 38.06,44.02L46.27,47.34C46.75,47.54 47.33,47.42 47.71,47.03C48.09,46.64 48.21,46.07 48,45.59L39.2,28.46Z"/> +</vector> diff --git a/platform/android/MapboxGLAndroidSDK/src/main/res/drawable/mapbox_user_stroke_icon.xml b/platform/android/MapboxGLAndroidSDK/src/main/res/drawable/mapbox_user_stroke_icon.xml new file mode 100644 index 0000000000..b4213a7e83 --- /dev/null +++ b/platform/android/MapboxGLAndroidSDK/src/main/res/drawable/mapbox_user_stroke_icon.xml @@ -0,0 +1,10 @@ +<vector + xmlns:android="http://schemas.android.com/apk/res/android" + android:width="22dp" + android:height="22dp" + android:viewportHeight="14.0" + android:viewportWidth="14.0"> + <path + android:fillColor="#ffffff" + android:pathData="M7,7m-7,0a7,7 0,1 1,14 0a7,7 0,1 1,-14 0"/> +</vector> diff --git a/platform/android/MapboxGLAndroidSDK/src/main/res/values/attrs.xml b/platform/android/MapboxGLAndroidSDK/src/main/res/values/attrs.xml index 053da80ade..9206899dd6 100644 --- a/platform/android/MapboxGLAndroidSDK/src/main/res/values/attrs.xml +++ b/platform/android/MapboxGLAndroidSDK/src/main/res/values/attrs.xml @@ -128,4 +128,50 @@ <enum name="bottom" value="3"/> </attr> </declare-styleable> + + <declare-styleable name="mapbox_LocationLayer"> + <attr name="mapbox_foregroundDrawable" format="reference"/> + <attr name="mapbox_foregroundTintColor" format="color"/> + <attr name="mapbox_backgroundDrawable" format="reference"/> + <attr name="mapbox_backgroundTintColor" format="color"/> + <attr name="mapbox_bearingDrawable" format="reference"/> + <attr name="mapbox_bearingTintColor" format="color"/> + <attr name="mapbox_gpsDrawable" format="reference"/> + + <attr name="mapbox_foregroundDrawableStale" format="reference"/> + <attr name="mapbox_foregroundStaleTintColor" format="color"/> + <attr name="mapbox_backgroundDrawableStale" format="reference"/> + <attr name="mapbox_backgroundStaleTintColor" format="color"/> + + <attr name="mapbox_accuracyAlpha" format="float"/> + <attr name="mapbox_accuracyColor" format="color"/> + + <attr name="mapbox_elevation" format="dimension"/> + + <!-- Stale state --> + <attr name="mapbox_enableStaleState" format="boolean"/> + <attr name="mapbox_staleStateTimeout" format="integer" min="0"/> + + <!-- Location icon padding --> + <attr name="mapbox_iconPaddingLeft" format="integer"/> + <attr name="mapbox_iconPaddingTop" format="integer"/> + <attr name="mapbox_iconPaddingRight" format="integer"/> + <attr name="mapbox_iconPaddingBottom" format="integer"/> + + <!-- Map layer configuration --> + <attr name="mapbox_layer_below" format="string"/> + + <!-- Map zoom levels --> + <attr name="mapbox_maxZoom" format="float"/> + <attr name="mapbox_minZoom" format="float"/> + + <!-- Icon scale based on map zoom levels --> + <attr name="mapbox_maxZoomIconScale" format="float"/> + <attr name="mapbox_minZoomIconScale" format="float"/> + + <!-- Camera tracking settings --> + <attr name="mapbox_trackingInitialMoveThreshold" format="dimension"/> + <attr name="mapbox_trackingMultiFingerMoveThreshold" format="dimension"/> + + </declare-styleable> </resources> diff --git a/platform/android/MapboxGLAndroidSDK/src/main/res/values/colors.xml b/platform/android/MapboxGLAndroidSDK/src/main/res/values/colors.xml index 19007f503f..565d1c99ca 100644 --- a/platform/android/MapboxGLAndroidSDK/src/main/res/values/colors.xml +++ b/platform/android/MapboxGLAndroidSDK/src/main/res/values/colors.xml @@ -3,4 +3,7 @@ <color name="mapbox_gray_dark">#5F5F5F</color> <color name="mapbox_gray">#7D7F80</color> <color name="mapbox_blue">#1E8CAB</color> + + <color name="mapbox_location_layer_blue">#4A90E2</color> + <color name="mapbox_location_layer_gray">#A1B0C0</color> </resources> diff --git a/platform/android/MapboxGLAndroidSDK/src/main/res/values/dimens.xml b/platform/android/MapboxGLAndroidSDK/src/main/res/values/dimens.xml index 00fc05cf6d..9bf77d46d9 100644 --- a/platform/android/MapboxGLAndroidSDK/src/main/res/values/dimens.xml +++ b/platform/android/MapboxGLAndroidSDK/src/main/res/values/dimens.xml @@ -15,4 +15,7 @@ <!--Minimum angular velocity required to start rotation animation--> <dimen name="mapbox_minimum_angular_velocity">0.025dp</dimen> + + <dimen name="mapbox_locationLayerTrackingInitialMoveThreshold">25dp</dimen> + <dimen name="mapbox_locationLayerTrackingMultiFingerMoveThreshold">125dp</dimen> </resources> diff --git a/platform/android/MapboxGLAndroidSDK/src/main/res/values/styles.xml b/platform/android/MapboxGLAndroidSDK/src/main/res/values/styles.xml new file mode 100644 index 0000000000..40bf1540ab --- /dev/null +++ b/platform/android/MapboxGLAndroidSDK/src/main/res/values/styles.xml @@ -0,0 +1,45 @@ +<?xml version="1.0" encoding="utf-8"?> +<resources> + + <style name="mapbox_LocationLayer"> + <item name="mapbox_foregroundDrawable">@drawable/mapbox_user_icon</item> + <item name="mapbox_backgroundDrawable">@drawable/mapbox_user_stroke_icon</item> + <item name="mapbox_bearingDrawable">@drawable/mapbox_user_bearing_icon</item> + <item name="mapbox_gpsDrawable">@drawable/mapbox_user_puck_icon</item> + + <item name="mapbox_foregroundDrawableStale">@drawable/mapbox_user_icon_stale</item> + <item name="mapbox_backgroundDrawableStale">@drawable/mapbox_user_stroke_icon</item> + + <item name="mapbox_accuracyAlpha">0.15</item> + <item name="mapbox_accuracyColor">@color/mapbox_location_layer_blue</item> + + <item name="mapbox_elevation">12dp</item> + + <item name="mapbox_enableStaleState">true</item> + <item name="mapbox_staleStateTimeout">30000</item> + + + <!-- Location icon padding --> + <item name="mapbox_iconPaddingLeft">0</item> + <item name="mapbox_iconPaddingTop">0</item> + <item name="mapbox_iconPaddingRight">0</item> + <item name="mapbox_iconPaddingBottom">0</item> + + <!-- Map zoom levels --> + <item name="mapbox_maxZoom">18</item> + <item name="mapbox_minZoom">2</item> + + <!-- Location icon scale based on map zoom levels --> + <item name="mapbox_maxZoomIconScale">1</item> + <item name="mapbox_minZoomIconScale">0.6</item> + + <!-- Camera tracking settings --> + <item name="mapbox_trackingInitialMoveThreshold"> + @dimen/mapbox_locationLayerTrackingInitialMoveThreshold + </item> + <item name="mapbox_trackingMultiFingerMoveThreshold"> + @dimen/mapbox_locationLayerTrackingMultiFingerMoveThreshold + </item> + + </style> +</resources>
\ No newline at end of file |