2013-05-29 13 views
9

Sto provando a posizionare un indicatore, ma quando lo faccio, questo indicatore viene posizionato dietro ad alcuni indicatori impostati prima (e anche su alcuni altri). Voglio impostarlo su tutti i marker, ma non ho trovato alcuna proprietà (come z-index) per raggiungere questo obiettivo.Imposta un indicatore su tutti gli altri indicatori nell'SDK di Google Maps iOS

Questa è la parte del codice in cui ho impostato il marcatore che rimane indietro rispetto agli altri:

GMSMarker *marker = [[GMSMarker alloc] init]; 
marker.animated=YES; 
marker.position = CLLocationCoordinate2DMake(lat, lon); 
marker.map = mapView_; 

e questo è il risultato:

Green marker is placed behind some blue markers and over other blue markers

C'è qualche proprietà o modo posizionare il pennarello verde su tutti i segnalini blu? Sto utilizzando la versione 1.3.0 di Google Maps SDK.

risposta

26

Questo è ora supportato tramite una proprietà zIndex aggiunta alla classe GMSOverlay nella versione 1.4.0. Da :

Aggiunta una proprietà zIndex su tutti gli overlay. Gli Z-Index sono calcolati in due gruppi: GMSMarker s e tutti gli altri overlay.

Basta impostare un valore alto zIndex sul pennarello per farlo apparire sopra a tutti gli altri. Come affermato dalla documentazione di proprietà here:

superiore zIndex sovrapposizioni di valore saranno disegnati in cima inferiori zIndex posatori valore e sovrapposizioni.

L'impostazione predefinita zIndex per un marcatore è 0 (almeno nella versione SDK corrente - io non l'ho visto documentata, ma è facile testare e confermare), quindi se non sta impostando il zIndex per la maggior parte dei vostri indicatori e avere uno che si desidera posizionare al di sopra di tutti gli altri, tutto quello che dovete fare è:

yourGmsMarker.zIndex = 1; 
+0

Se si vuole mettere un marcatore su un altro, mettere il precedente zIndex di sotto di 1 (diciamo 0,8) e quindi 1.0 –

Problemi correlati