2012-12-31 13 views
9

Ich habe versucht, das Standardinfofenster in der Android-Karte zu schließen. Ich habe .hideInfoWindow() verwendet, aber nichts hängt an. Danke.Hide infowindow android map api v2

+0

dieser Methode sollte der richtige Weg sein. Könnten Sie Ihre Frage bearbeiten und die wichtigen Teile Ihres Codes hinzufügen? Wie erstellst du deine Marker? Wie implementierst du die onMarkerClick-Methode? – muetzenflo

Antwort

3

Ich nehme an, Sie möchten das Infofenster schließen, wenn Sie zum zweiten Mal auf den Marker klicken. Es scheint, dass Sie den zuletzt angeklickten Marker verfolgen müssen. Ich kann es nicht zur Arbeit bringen, indem ich einfach überprüfe, ob der angeklickte Marker gerade angezeigt wird und dann schließe, aber das funktioniert gut.

private Marker lastClicked; 

private class MyMarkerClickListener implements OnMarkerClickListener { 

    @Override 
    public boolean onMarkerClick(Marker marker) { 
     if (lastClicked != null && lastClicked.equals(marker)) { 
      lastClicked = null; 
      marker.hideInfoWindow(); 
      return true; 
     } else { 
      lastClicked = marker; 
      return false; 
     } 
    } 
} 
7

Verwenden

mapa.setOnInfoWindowClickListener(new GoogleMap.OnInfoWindowClickListener() { 

      @Override 
      public void onInfoWindowClick(Marker marker) { 


       marker.hideInfoWindow(); 
      } 
     }); 

Ich hoffe, das hilft.

10

die Aussage zurück ändern

@Override 
public boolean onMarkerClick(Marker marker) { 
return false; 
} 

     (to) 

@Override 
public boolean onMarkerClick(Marker marker) { 
return true; 
} 
+0

danke ... arbeitete wie ein Charme #Sathesh –

+0

Rückkehr wahr wird nicht zentrieren Karte Kamera auf Marker! –

Verwandte Themen