From ef65d2015c60d206cc72571c80d6ab05d9dd24c2 Mon Sep 17 00:00:00 2001 From: Tobrun Date: Fri, 8 Apr 2016 10:03:21 +0200 Subject: [PATCH] [android] #4335 - add clear method for removing annotations to MapboxMap --- .../java/com/mapbox/mapboxsdk/maps/MapboxMap.java | 8 ++++++++ .../activity/annotation/PolylineActivity.java | 2 +- .../com/mapbox/mapboxsdk/maps/MapboxMapTest.java | 12 ++++++++++++ 3 files changed, 21 insertions(+), 1 deletion(-) diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapboxMap.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapboxMap.java index 32b269027..48438735f 100644 --- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapboxMap.java +++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapboxMap.java @@ -894,6 +894,14 @@ public class MapboxMap { mAnnotations.clear(); } + /** + * Removes all markers, polylines, polygons, overlays, etc from the map. + */ + @UiThread + public void clear(){ + removeAnnotations(); + } + /** * Return a annotation based on its id. * diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/annotation/PolylineActivity.java b/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/annotation/PolylineActivity.java index b0271221e..f2d3d7a48 100644 --- a/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/annotation/PolylineActivity.java +++ b/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/annotation/PolylineActivity.java @@ -159,7 +159,7 @@ public class PolylineActivity extends AppCompatActivity { case R.id.action_id_remove: // test to remove all annotations mPolylineOptions.clear(); - mMapboxMap.removeAnnotations(); + mMapboxMap.clear(); return true; case android.R.id.home: diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/test/java/com/mapbox/mapboxsdk/maps/MapboxMapTest.java b/platform/android/MapboxGLAndroidSDKTestApp/src/test/java/com/mapbox/mapboxsdk/maps/MapboxMapTest.java index 25cc3cb32..e7362cca4 100644 --- a/platform/android/MapboxGLAndroidSDKTestApp/src/test/java/com/mapbox/mapboxsdk/maps/MapboxMapTest.java +++ b/platform/android/MapboxGLAndroidSDKTestApp/src/test/java/com/mapbox/mapboxsdk/maps/MapboxMapTest.java @@ -751,6 +751,18 @@ public class MapboxMapTest { assertTrue("Annotations should be empty", mMapboxMap.getAnnotations().isEmpty()); } + @Test + public void testClear() { + List markerList = new ArrayList<>(); + MarkerOptions markerOptions1 = new MarkerOptions().title("a"); + MarkerOptions markerOptions2 = new MarkerOptions().title("b"); + markerList.add(markerOptions1); + markerList.add(markerOptions2); + mMapboxMap.addMarkers(markerList); + mMapboxMap.clear(); + assertTrue("Annotations should be empty", mMapboxMap.getAnnotations().isEmpty()); + } + @Test public void testRemoveAnnotationsByList() { List markerList = new ArrayList<>();