Skip to content

Commit

Permalink
[android] Allow apps to override map resources
Browse files Browse the repository at this point in the history
Leith Bade committed Oct 30, 2015

Verified

This commit was signed with the committer’s verified signature.
d2iq-dispatch D2iQ Dispatch
1 parent 36479f3 commit 7d6140d
Showing 31 changed files with 26 additions and 13 deletions.
Original file line number Diff line number Diff line change
@@ -43,8 +43,6 @@ final class UserLocationView extends View {

private MapView mMapView;

private static final int BLUE_COLOR = 0x39ACCBFF;

private float mDensity;

private boolean mShowMarker;
@@ -137,6 +135,8 @@ private void initialize(Context context) {

// Setup the custom paint
Resources resources = context.getResources();
int accuracyColor = resources.getColor(R.color.my_location_ring);

mDensity = resources.getDisplayMetrics().density;
mMarkerCoordinate = new LatLng(0.0, 0.0);
mMarkerScreenPoint = new PointF();
@@ -145,20 +145,20 @@ private void initialize(Context context) {
mAccuracyPaintFill = new Paint();
mAccuracyPaintFill.setAntiAlias(true);
mAccuracyPaintFill.setStyle(Paint.Style.FILL);
mAccuracyPaintFill.setColor(BLUE_COLOR);
mAccuracyPaintFill.setColor(accuracyColor);
mAccuracyPaintFill.setAlpha((int) (255 * 0.25f));

mAccuracyPaintStroke = new Paint();
mAccuracyPaintStroke.setAntiAlias(true);
mAccuracyPaintStroke.setStyle(Paint.Style.STROKE);
mAccuracyPaintStroke.setStrokeWidth(0.5f * mDensity);
mAccuracyPaintStroke.setColor(BLUE_COLOR);
mAccuracyPaintStroke.setColor(accuracyColor);
mAccuracyPaintStroke.setAlpha((int) (255 * 0.5f));

mAccuracyPath = new Path();
mAccuracyBounds = new RectF();

mUserLocationDrawable = ContextCompat.getDrawable(getContext(), R.drawable.user_location);
mUserLocationDrawable = ContextCompat.getDrawable(getContext(), R.drawable.my_location);
mUserLocationDrawableBounds = new Rect(
-mUserLocationDrawable.getIntrinsicWidth() / 2,
-mUserLocationDrawable.getIntrinsicHeight() / 2,
@@ -171,7 +171,7 @@ private void initialize(Context context) {
mUserLocationDrawable.getIntrinsicHeight() / 2);
mUserLocationDrawable.setBounds(mUserLocationDrawableBounds);

mUserLocationBearingDrawable = ContextCompat.getDrawable(getContext(), R.drawable.user_location_bearing);
mUserLocationBearingDrawable = ContextCompat.getDrawable(getContext(), R.drawable.my_location_bearing);
mUserLocationBearingDrawableBounds = new Rect(
-mUserLocationBearingDrawable.getIntrinsicWidth() / 2,
-mUserLocationBearingDrawable.getIntrinsicHeight() / 2,
@@ -184,7 +184,7 @@ private void initialize(Context context) {
mUserLocationBearingDrawable.getIntrinsicHeight() / 2);
mUserLocationBearingDrawable.setBounds(mUserLocationBearingDrawableBounds);

mUserLocationStaleDrawable = ContextCompat.getDrawable(getContext(), R.drawable.user_location_stale);
mUserLocationStaleDrawable = ContextCompat.getDrawable(getContext(), R.drawable.my_location_stale);
mUserLocationStaleDrawableBounds = new Rect(
-mUserLocationStaleDrawable.getIntrinsicWidth() / 2,
-mUserLocationStaleDrawable.getIntrinsicHeight() / 2,
12 changes: 12 additions & 0 deletions android/MapboxGLAndroidSDK/src/main/res-public/values/public.xml
Original file line number Diff line number Diff line change
@@ -40,4 +40,16 @@
<public name="attribution_margin_right" type="attr" />
<public name="attribution_margin_bottom" type="attr" />
<public name="attribution_visibility" type="attr" />

<public name="attribution_logo" type="drawable" />
<public name="compass" type="drawable" />
<public name="default_marker" type="drawable" />
<public name="attribution_button_pressed_selector" type="drawable" />
<public name="attribution_button_pressed_normal" type="drawable" />
<public name="attribution_button_pressed_pressed" type="drawable" />
<public name="my_location" type="drawable" />
<public name="my_location_bearing" type="drawable" />
<public name="my_location_stale" type="drawable" />
<public name="my_location_ring" type="color" />
<public name="mapbox_blue" type="color" />
</resources>
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/attribution_button_pressed" android:state_pressed="true" />
<item android:drawable="@drawable/attribution_button_normal" />
</selector>

This file was deleted.

Original file line number Diff line number Diff line change
@@ -26,7 +26,7 @@
android:clickable="true"
android:contentDescription="@string/attributionsIconContentDescription"
android:padding="7dp"
android:src="@drawable/ic_info_selector" />
android:src="@drawable/attribution_button_selector" />

<com.mapbox.mapboxsdk.views.UserLocationView
android:id="@+id/userLocationView"
1 change: 1 addition & 0 deletions android/MapboxGLAndroidSDK/src/main/res/values/colors.xml
Original file line number Diff line number Diff line change
@@ -3,4 +3,5 @@
<color name="white">#FFFFFF</color>
<color name="black">#000000</color>
<color name="mapbox_blue">#1E8CAB</color>
<color name="my_location_ring">@color/mapbox_blue</color>
</resources>

0 comments on commit 7d6140d

Please sign in to comment.