Android Maps Utility: Bilder von URL

8

Ich verwende die hervorragende Android Maps-Dienstprogrammbibliothek , um benutzerdefinierte Markierungen mit Clustern auf der Karte anzuzeigen . Es funktioniert großartig und es ist sehr einfach anzupassen.

Mein Problem ist, wie lokale Ressourcen von der Demo (R.drawable.image_demo) in Bilder von einer URL geändert werden können. Ich benutze Universal Image Loader, um diese Bilder auf dem imageView async zu laden, aber die Probleme sind, dass die Bilder nicht auf den entsprechenden Marker geladen werden.

Wer weiß von irgendeinem Beispiel?

Dies ist der Code, unter dem das Image heruntergeladen und in die DefaultClusterRender-Klasse geladen wird. Vielen Dank im Voraus.

%Vor%     
Pelanes 11.04.2014, 13:12
quelle

1 Antwort

10

Ich hatte ein ähnliches Problem mit der UIL, nicht alle Bilder wurden geladen. Jedes Mal, wenn ich die Kartenaktivität ausführte und in die Cluster hineinzoomte, gab es verschiedene Marker / Cluster, die kein Bild hatten. Nur die Standard-Marker / Cluster-Symbole wurden angezeigt.

Endlich nach zwei Tagen versuchen und ausprobieren funktioniert es gut. Vorübergehend war ich in die Picasso-Bibliothek gewechselt, um zu sehen, ob es funktionieren könnte, aber ich hatte dort ähnliche Probleme und konnte es nicht schaffen. Neben Picasso wurden alle aus dem Web (URL) geladenen Bilder um 90 Grad gedreht. Ich konnte nicht herausfinden warum. Laut einigen Posts, die ich im Internet gefunden habe, muss ich vielleicht etwas mit dem Gerät machen, ich benutze das Samsung Galaxy S5 zum Testen. Aber nicht sicher ....

Hier einige Hinweise, wie ich es gemacht habe: Ich habe eine HardRefSimpleImageLoadingListener mit einer ImageView erstellt, die existiert, bis der UIL-Ladevorgang beendet ist. Ohne seine harte Referenz ImageView würde die onLoadingCancelled aufgerufen und das Laden würde nicht abgeschlossen werden. Ich habe auch die Objekte ClusterMarkerTarget und ClusterItemMarkerTarget erstellt, die einen Marker, ImageView und eine Bitmap für die Icon-Generatoren enthalten. Ich habe sie auch in die HashSets myClusterItemMarkerTargets und myClusterMarkerTargets eingefügt, damit sie keine Müllsammlung bekommen.

Vielleicht kann es für jemanden von Nutzen sein.

Hier ein Code:

%Vor%

mehr:

%Vor%

mehr:

%Vor%

mehr:

%Vor%

und schließlich:

%Vor%     
Thomas Heidenreich 06.05.2015 17:35
quelle