Подтвердить что ты не робот

Google Maps Android API v2, как удалить Полилинии с карты?

Я пытаюсь удалить ранее добавленную Polyline и перерисовать новую Polyline, когда местоположение было изменено. Я попробовал оба

this.routeToDestination.setPoints(pointsToDestination) и   this.routeToDestination.remove()

но ни одна из них не работала.

Я последовал за Как нарисовать динамическую линию (маршрут) с Google Maps Android API v2, но не смог решить проблему

    @Override
    public void onResume() {
        super.onResume();

        routeToDestination = mMap.addPolyline(new PolylineOptions()
                .add(new LatLng(location.getLatitude(), location.getLongitude()),
                        new LatLng(this.destinationLatitude, this.destinationLongitude))
                .width(1)
                .color(Color.DKGRAY)

        );
    }

   @Override
    public void onLocationChanged(Location location) {

        List<LatLng> pointsToDestination = new ArrayList<LatLng>();
        pointsToDestination.add(new LatLng(location.getLatitude(), location.getLongitude()));
        pointsToDestination.add(new LatLng(destinationLatitude, destinationLongitude));

        this.routeToDestination.setPoints(pointsToDestination);
    }

}
4b9b3361

Ответ 1

Чтобы удалить полилинию, вы должны просто использовать метод remove(), как указано в API.

//Add line to map
Polyline line = mMap.addPolyline(new PolylineOptions()
            .add(new LatLng(location.getLatitude(), location.getLongitude()),
                    new LatLng(this.destinationLatitude, this.destinationLongitude))
            .width(1)
            .color(Color.DKGRAY)

//Remove the same line from map
line.remove();