Ich zeichne Polylinien auf meiner Google Map. Ich mache es mit:Android Google Map ändern Polylinie Farben
private Map<UUID, PolylineOptions> data;
private void drawFeatures() {
for (Feature feature : features) {
feature.setUuid(UUID.fromString((String) feature.getProperties().get("id")));
PolylineOptions options = new PolylineOptions();
List<Coordinates> coordinates = ((LineString) feature.getGeometry()).getCoordinates();
for (Coordinates coordinate : coordinates) {
// can't use "addAll(...) since 'coordinates' are not instance of 'LatLng'
options.add(new LatLng(coordinate.getLatitude(), coordinate.getLongitude()));
options.color(Color.RED);
}
mMap.addPolyline(options);
data.put(feature.getUuid(), options);
}
}
Und dann ist alles in Ordnung. Alle meine Polylinien sind korrekt gezeichnet mit der guten Breite und Farbe.
Aber danach versuche ich, die Breite und die Farbe zu aktualisieren (ohne alle Polylinien zu entfernen und neu zu zeichnen). Ich versuche, es zu tun mit:
private void changeColor() {
for (Map.Entry<UUID, PolylineOptions> entry : data.entrySet()) {
entry.getValue().color(Color.CYAN);
}
}
Aber es gibt keine Änderungen auf meiner Karte:/Ich habe die Google Developers-Dokumentation zu lesen und ich etwas über das nicht finden.
Wie kann ich die Farbe einer Polylinie aktualisieren, ohne sie entfernen und neu hinzufügen zu müssen?