2013-01-24 8 views
8

Ich verwende Google Maps API v2 und versuche, eine Referenz-ID in ein Marker-Informationsfenster einzubetten. Wenn ein Benutzer auf das Informationsfenster klickt, sollte die Referenz-ID an eine neue Absicht übergeben werden.Google Maps-API für Android: Ausblenden des Marker-Snippets

Ich möchte eigentlich nicht die Referenz-ID für den Benutzer sichtbar sein. Ich habe die Referenz-ID als Snippet hinzugefügt und marker.getSnippet() verwendet, um die Referenz-ID an die neue Aktivität zu übergeben. Gibt es eine Möglichkeit, das Snippet zu verbergen, damit der Benutzer es nicht sieht?

Antwort

7

Passen Sie den Inhalt des Info-Fensters über eine InfoWindowAdapter an, und fügen Sie sie an Ihre GoogleMap über setInfoWindowAdapter() an. Implementieren Sie onInfoContents() auf dem Adapter, um etwas zurückzugeben, das Ihr Snippet nicht enthält.

+0

ich besorgt war, dass der Fall wäre ... Dank sein. – scientiffic

+0

Um dies zu erreichen, habe ich diese Antwort :) Danke für die Idee http://stackoverflow.com/a/17549438/1339326 – magorich

0

Ich habe nach dem gleichen Ding gesucht und etwas interessantes selbst gefunden. Der Trick mag so dumm scheinen, aber es hat perfekt funktioniert. Nachdem sie den Wert aus dem Snippet in onMarkerClick (Marker m) Ich gründe es zurück auf null: D Hier den Code ist:

@Override 
public boolean onMarkerClick(Marker marker) { 
    locationMarker = marker; 
    Intent intent = new Intent(getApplicationContext(),MarkerInfoView.class); 
    String uid = marker.getSnippet(); 
    marker.setSnippet(""); 
    intent.putExtra(UID,uid); 
    startActivity(intent); 
    return false; 
} 

Also, auf onClick() es zeigt den Titel und öffnet eine weitere Aktivität und zeigt dort die zugehörigen weiteren Informationen des Benutzers an. Gib mir verrückt thumbzhup wenn es für dich funktioniert;) Lassen Sie mich wissen, wenn jemand andere Codierung Hilfe bei der Verfolgung von Benutzer-und Marker-Klick-Operationen. Ich werde versuchen, helfen Sie so viel wie möglich. Good Luck (y)

Screenshot hier: enter image description here