From bfd039853ca397fc546c04f144c90469d0913c0c Mon Sep 17 00:00:00 2001 From: Brad Leege Date: Fri, 7 Aug 2015 15:37:26 -0500 Subject: [PATCH] #1856 - Adding Styles to Navigation View with separator --- .../mapbox/mapboxgl/testapp/MainActivity.java | 89 ++++++------------- .../src/main/res/menu/menu_drawer.xml | 21 +++++ .../src/main/res/values/strings.xml | 19 ++-- 3 files changed, 57 insertions(+), 72 deletions(-) diff --git a/android/java/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxgl/testapp/MainActivity.java b/android/java/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxgl/testapp/MainActivity.java index ada2fc45b..ce245daf8 100644 --- a/android/java/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxgl/testapp/MainActivity.java +++ b/android/java/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxgl/testapp/MainActivity.java @@ -3,6 +3,7 @@ package com.mapbox.mapboxgl.testapp; import android.graphics.Color; import android.graphics.PointF; import android.os.Bundle; +import android.support.annotation.NonNull; import android.support.design.widget.NavigationView; import android.support.v4.view.GravityCompat; import android.support.v4.widget.DrawerLayout; @@ -294,6 +295,26 @@ public class MainActivity extends AppCompatActivity { // Toggle compass mapView.setCompassEnabled(!mapView.isCompassEnabled()); break; + + case R.id.actionStyleMapboxStreets: + changeMapStyle(getString(R.string.styleURLMapboxStreets)); + break; + + case R.id.actionStyleEmerald: + changeMapStyle(getString(R.string.styleURLEmerald)); + break; + + case R.id.actionStyleLight: + changeMapStyle(getString(R.string.styleURLLight)); + break; + + case R.id.actionStyleDark: + changeMapStyle(getString(R.string.styleURLDark)); + break; + + case R.id.actionStyleSatellite: + changeMapStyle(getString(R.string.styleURLSatellite)); + break; } return true; @@ -301,6 +322,10 @@ public class MainActivity extends AppCompatActivity { }); } + private void changeMapStyle(@NonNull String styleURL) { + mapView.setStyleUrl(styleURL); + } + /** * Enabled / Disable GPS location updates along with updating the UI * @param enableGps true if GPS is to be enabled, false if GPS is to be disabled @@ -400,70 +425,6 @@ public class MainActivity extends AppCompatActivity { mapView.removeAnnotations(); } - // This class handles style change events - private class StyleSpinnerListener implements AdapterView.OnItemSelectedListener { - - @Override - public void onItemSelected(AdapterView parent, View view, int position, long id) { - switch (position) { - - // Mapbox Streets - case 0: - mapView.setStyleUrl("asset://styles/mapbox-streets-v7.json"); - mapView.removeAllStyleClasses(); - mClassSpinner.setVisibility(View.INVISIBLE); - mClassSpinner.setAdapter(null); - mClassSpinner.setOnItemSelectedListener(null); - break; - - // Emerald - case 1: - mapView.setStyleUrl("asset://styles/emerald-v7.json"); - mapView.removeAllStyleClasses(); - mClassSpinner.setVisibility(View.INVISIBLE); - mClassSpinner.setAdapter(null); - mClassSpinner.setOnItemSelectedListener(null); - break; - - // Light - case 2: - mapView.setStyleUrl("asset://styles/light-v7.json"); - mapView.removeAllStyleClasses(); - mClassSpinner.setVisibility(View.INVISIBLE); - mClassSpinner.setAdapter(null); - mClassSpinner.setOnItemSelectedListener(null); - break; - - // Dark - case 3: - mapView.setStyleUrl("asset://styles/dark-v7.json"); - mapView.removeAllStyleClasses(); - mClassSpinner.setVisibility(View.INVISIBLE); - mClassSpinner.setAdapter(null); - mClassSpinner.setOnItemSelectedListener(null); - break; - - // Outdoors - case 4: - mapView.setStyleUrl("asset://styles/outdoors-v7.json"); - mapView.removeAllStyleClasses(); - mClassSpinner.setVisibility(View.VISIBLE); - mClassSpinner.setAdapter(mOutdoorsClassAdapter); - mClassSpinner.setOnItemSelectedListener(new OutdoorClassSpinnerListener()); - break; - - default: - onNothingSelected(parent); - break; - } - } - - @Override - public void onNothingSelected(AdapterView parent) { - mapView.setStyleUrl(""); - } - } - // This class handles outdoor class change events private class OutdoorClassSpinnerListener implements AdapterView.OnItemSelectedListener { diff --git a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/menu/menu_drawer.xml b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/menu/menu_drawer.xml index 4a1211716..1474161e0 100644 --- a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/menu/menu_drawer.xml +++ b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/menu/menu_drawer.xml @@ -1,5 +1,6 @@ + + + + + + + + + + + diff --git a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/values/strings.xml b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/values/strings.xml index 0022fe045..40bd286e5 100644 --- a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/values/strings.xml +++ b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/values/strings.xml @@ -5,19 +5,22 @@ Toggle GPS location Toggle Compass - Toggle debug mode - Toggle point annotations FPS: - - Mapbox Streets - Emerald - Light - Dark - + Mapbox Streets + Emerald + Light + Dark + Satellite + + asset://styles/mapbox-streets-v7.json + asset://styles/emerald-v7.json + asset://styles/light-v7.json + asset://styles/dark-v7.json + asset://styles/satellite-v7.json Day