Ashish Kasma
Ashish Kasma

Reputation: 3642

Clear markers from Google Map in Android

I have added map on fragment activity and added several marker using addMarker function, but i am able to remove all markers , I am getting notification for different list of markers,

Now i wants to remove all markers and add new one.

one way to keep all markers in list and remove one by one, (marker.remove())

Is there any better way to clear all marker.

Upvotes: 90

Views: 76310

Answers (2)

FRANCIS FERNANDO
FRANCIS FERNANDO

Reputation: 116

If you do not wish to clear polylines and only the markers need to be removed follow the steps below.

First create a new Marker Array like below

List<Marker> AllMarkers = new ArrayList<Marker>();

Then when you add the marker on the google maps also add them to the Marker Array (its AllMarkers in this example)

for(int i=0;i<places.length();i++){

                LatLng location = new LatLng(Lat,Long);
                MarkerOptions markerOptions = new MarkerOptions();
                markerOptions.position(location);
                markerOptions.title("Your title");

                 Marker mLocationMarker = Map.addMarker(markerOptions); // add the marker to Map
                    AllMarkers.add(mLocationMarker); // add the marker to array

                }

then finally call the below method to remove all markers at once

 private void removeAllMarkers() {
        for (Marker mLocationMarker: AllMarkers) {
            mLocationMarker.remove();
        }
        AllMarkers.clear();

    }

call from anywhere to remove all markers

removeAllMarkers();

I found this solution when i was looking for a way to remove only the map markers without clearing the polylines. Hope this will help you too.

Upvotes: 7

CommonsWare
CommonsWare

Reputation: 1006584

If you want to clear "all markers, overlays, and polylines from the map", use clear() on your GoogleMap.

Upvotes: 213

Related Questions