2012-04-13 8 views
1

ich habe eine Kartenansicht Hilfe von Google Map APIandroid google map changeing auf der Flucht

in meiner Karte habe ich einige Overlays Marker, die i Wurf entworfen haben die ItemizedOverlay erstreckt.

Ich möchte dieses markerfähige Bild ändern, nachdem die Karte für den Benutzer bereits sichtbar ist. ist es möglich?

meine Absicht ist es, etwas faul ziehbare laden (wie Sie in einer Listenansicht), weil alle meine Bilder aus dem Web kommen, und ich möchte nicht der Benutzer warten auf alle Bilder zu laden, bevor Ich lade die Karte. Ansicht

auf einer Liste seine Art einfach, weil der Thread das Image aktualisiert wird, aber hier weiß ich nicht, wie ein bestimmtes Element zuzugreifen, nachdem die Karte geladen ist ..

Dank!

Antwort

0

Überprüfen Sie die Funktion setMarker in OverlayItem. Sie können das Bild für einen bestimmten Marker ändern. Stellen Sie sicher, dass Sie das Bild zentrieren, bevor Sie es einstellen.

OverLayItem

0

Zuerst laden wir alle Dummy-Bilder und zeigen sie in der Kartenansicht an und starten gleichzeitig eine Hintergrundaufgabe, um alle Bilder vom Server herunterzuladen. Sobald der Bild-Download abgeschlossen ist, löschen Sie einfach alle Overlays auf der Kartenansicht und laden die neu tatsächlich heruntergeladene Bilder auf der Kartenansicht.

+0

Ich laufe in die exakt gleiche Problem. Dein Weg sieht Arbeit. Wie auch immer, ich habe versucht mit 'setMarker()' in 'Overlay.onTap()', es ändert die Markierung, aber nicht im Hintergrund arbeiten, auch ich habe es zum Haupt-Thread. Es ist sehr verwirrend über den MapView-Lebenszyklus. – Hank

+0

rufen Sie auch mapview.invalidate() –