13

Attualmente sono stato in grado di visualizzare tutti i miei marcatori nelle mappe di Google utilizzando l'API di Google Maps API v2.Nascondi la finestra di informazioni sui marker in Android google maps API v2

aggiungendo il mio marcatore nella mappa:

mapView.addMarker 
    (new MarkerOptions() 
     .position(aUsersLocation). 
     icon(BitmapDescriptorFactory.fromBitmap(aUserImage)) 
     .snippet(My_VALUE_1) 
     .title(My_VALUE_2) 
    .hideInfoWindow(); 

Ho diversi marcatori ei valori pochi assegnati (My_VALUE_1 e My_VALUE_2) a frammento e il titolo di ogni marcatore. Quando l'utente fa clic su un marcatore, ho bisogno di questi valore unico e riceverò questi valori in onMarkerClick ascoltatore come:

 @Override 
     public boolean onMarkerClick(Marker theMarker) 
     { 
      String aValue1 = theMarker.getSnippet(); 
      String aValue2 = theMarker.getTitle(); 
      theMarker.getPosition().latitude... 
      ... 
      return false; 
     } 

La mia domanda è: come sto aggiungendo i valori frammento e titolo al marcatore, quando l'utente fa clic sul marker, viene visualizzato infoWindow.

Ho bisogno di nascondere le informazioni del marcatore. Ho provato con hideInfoWindow, ma sembra non funzionare.

Qualsiasi suggerimento, per favore.

Grazie.

risposta

81
return true; 

da onMarkerClick per disabilitare il comportamento predefinito di mostrare finestra di informazioni e la centratura sul marcatore.

+20

A proposito, se desideri comunque mantenere l'animazione del centro della mappa sull'indicatore (ma vuoi solo mantenere nascosta la finestra delle informazioni), aggiungi semplicemente 'mapView.animateCamera (CameraUpdateFactory.newLatLng (marker.getPosition())); 'prima che tu restituisca true;' – saschoar

+0

Grazie mille per la tua risposta/commento! – deimos1988

+0

Cosa succede se volevo solo mostrare la finestra delle informazioni ma non spostare l'animazione del centro. puoi per favore suggerire una soluzione per questo problema. –