조각 활동에 맵을 추가하고 addMarker 기능을 사용하여 여러 마커를 추가했지만 모든 마커를 제거 할 수 있습니다. 다른 마커 목록에 대한 알림을 받고 있습니다.
이제 모든 마커를 제거하고 새 마커를 추가하고 싶습니다.
모든 마커를 목록에 유지하고 하나씩 제거하는 한 가지 방법, (marker.remove ())
모든 마커를 지우는 더 좋은 방법이 있습니까?
조각 활동에 맵을 추가하고 addMarker 기능을 사용하여 여러 마커를 추가했지만 모든 마커를 제거 할 수 있습니다. 다른 마커 목록에 대한 알림을 받고 있습니다.
이제 모든 마커를 제거하고 새 마커를 추가하고 싶습니다.
모든 마커를 목록에 유지하고 하나씩 제거하는 한 가지 방법, (marker.remove ())
모든 마커를 지우는 더 좋은 방법이 있습니까?
답변:
"지도에서 모든 마커, 오버레이 및 폴리 라인"을 지우려면에서을 사용 clear()
하십시오GoogleMap
.
Marker
지도에서 별도로 객체, 당신은 사람들의 이동을하게 할 필요가있다. 시각적으로clear()
제거됩니다 .
clear()
기능은 Marker
ID를 재설정하지 않습니다 . 기본적으로 m0
새로운 Marker
추가를 위해 다시는 얻을 수 없습니다 .
폴리 라인을 지우지 않고 마커 만 제거해야하는 경우 아래 단계를 따르십시오.
먼저 아래와 같이 새 마커 배열을 만듭니다.
List<Marker> AllMarkers = new ArrayList<Marker>();
그런 다음 Google지도에 마커를 추가 할 때 마커 배열 (이 예에서는 AllMarkers)에도 추가합니다.
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
}
그런 다음 마지막으로 아래 메서드를 호출하여 모든 마커를 한 번에 제거하십시오.
private void removeAllMarkers() {
for (Marker mLocationMarker: AllMarkers) {
mLocationMarker.remove();
}
AllMarkers.clear();
}
모든 마커를 제거하려면 어디에서나 호출
removeAllMarkers();
폴리 라인을 지우지 않고지도 마커 만 제거하는 방법을 찾고있을 때이 솔루션을 찾았습니다. 이것이 당신에게도 도움이되기를 바랍니다.