2015-10-07 9 views
15

voglio mostrare qualcosa come thisfinestra di informazioni su ogni marcatore mostrano in un momento

Sono in grado di mostrare tutti gli indicatori sulla mappa, ma voglio mostrare finestra informativa su ogni marcatori ogni volta tutti i marcatori sono popolate . Ho provato fino ad ora ma mostra tutti i marcatori con una sola finestra informativa.

for (int i = 0; i < jobsDtoList.size(); i++) { 
    Double latitude = Double.parseDouble(jobsDtoList.get(i).getSiteLatitude()); 
    Double longitude = Double.parseDouble(jobsDtoList.get(i).getSiteLongitude()); 

    LatLng latLng = new LatLng(latitude, longitude); 
    MarkerOptions TP = new MarkerOptions().position(latLng).icon(BitmapDescriptorFactory.fromResource(R.mipmap.job_marker)); 
    googleMap.addMarker(TP).showInfoWindow(); 
} 

risposta

11

Non è possibile mostrare più di una finestra di informazioni alla volta. Da the documentation:

Una finestra di informazioni consente di visualizzare informazioni all'utente quando toccare su un marcatore. Viene visualizzata una sola finestra di informazioni alla volta. Se un utente di fa clic su un altro indicatore, la finestra di informazioni corrente verrà nascosta e verrà visualizzata la nuova finestra di informazioni.

Si consiglia di dare un'occhiata alle icone a forma di bolla dal Google Maps Android API Utility Library. Le icone a bolle aggiungono opzioni di rendering più potenti per i marcatori, ma non cambiano il loro comportamento. Ciò significa che ancora non sarà in grado di mostrare più di una finestra di informazioni alla volta, ma le icone bolla permetterà di mostrare più informazioni ogni marcatore:

Aggiungi un IconGenerator per visualizzare frammenti di informazioni su i tuoi marcatori . Questa utility fornisce un modo per rendere le icone dei marcatori come un po 'come finestre di informazioni, in quanto il marcatore stesso può contenere il testo e altri contenuti. Il vantaggio è che è possibile mantenere più di un indicatore aperto contemporaneamente, mentre è possibile aprire solo una finestra informativa allo stesso tempo. È anche possibile assegnare uno stile ai marcatori, modificare l'orientamento del marcatore e/o il contenuto e modificare lo sfondo dell'indicatore image/nine-patch.

AGGIORNAMENTO: Un esempio utilizzando le icone della bolla (di tenere conto che è necessario aggiungere la libreria di utilità API di Google Maps Android per il vostro progetto seguente this instructions):

LatLng latLng = new LatLng(latitude, longitude); 

TextView text = new TextView(context); 
text.setText("Your text here"); 
IconGenerator generator = new IconGenerator(context); 
generator.setBackground(context.getDrawable(R.drawable.bubble_mask)); 
generator.setContentView(text); 
Bitmap icon = generator.makeIcon(); 

MarkerOptions tp = new MarkerOptions().position(latLng).icon(BitmapDescriptorFactory.fromBitmap(icon)); 
googleMap.addMarker(tp); 
+2

è così c'è modo di aggiungere personalizzato indicatore con il campo di testo per visualizzare tutti i titoli su tutti i marcatori oltre a infowindow? –

+0

@Ram Mandal Ho aggiornato la mia risposta con un esempio – antonio

+0

Grazie per il suggerimento bro. apprezzo molto il tuo aiuto –

Problemi correlati