2016-07-28 11 views
0

Wenn ich male, muss ich einige Datenmarker binden, wenn der Marker, und ich muss auf den Marker klicken, um Daten zu erhalten. Wie binde ich Daten und empfangene Daten? Ich brauche Hilfe! DankeGoogle Maps Marker wie gespeicherte Daten

+0

bitte Ihren Code hinzufügen, so können wir helfen, was Sie –

Antwort

0

Sie können Ihre Daten an eine Marker mit einem HashMap binden. Der Schlüssel wird die Marker selbst und der Wert wird die Daten, die Sie auf Ihre Marker (nur ein String in meinem Beispiel) beziehen müssen:

private Map<Marker, String> markers = new HashMap<>(); // Map to bind a Strings to Markers 

// ... 

Marker marker1 = map.addMarker(new MarkerOptions().position(new LatLng(52, 5))); 
markers.put(marker1, "One"); 
Marker marker2 = map.addMarker(new MarkerOptions().position(new LatLng(52.1, 5.1))); 
markers.put(marker2, "Two"); 

map.setOnMarkerClickListener(new GoogleMap.OnMarkerClickListener() { 
    @Override 
    public boolean onMarkerClick(final Marker marker) { 
     Log.i("Marker", markers.get(marker)); // Query the map to get the String related to the clicked Marker 
     return false; 
    } 
}); 
+0

brauchen Danke, wenn eine große Menge von Daten oom – user5697633

+0

Die Karte selbst verwaltet nicht gut eine große Menge an Markern. Vielleicht möchten Sie einen Blick auf Marker Clustering werfen: https://developers.google.com/maps/documentation/android-api/utility/marker-clustern – antonio

+0

danke, ich gehe es zu versuchen – user5697633