Ho diversi indicatori visualizzati sulla mia mappa che sono vicini l'uno all'altro o addirittura uno sopra l'altro. Ho bisogno di avere un indicatore specifico sempre in cima. Non importa se aggiungo il marker alla mappa prima o dopo, spesso finisce per essere posizionato dietro alcuni marker. Per qualche misterioso motivo, Google Maps lo stabilisce. Deve funzionare con Google Maps per Android V2.Modifica z-index (ordine z) dell'indicatore della mappa per Maps V2 in Android
risposta
Sfortunatamente, Markers
in Google Maps API V2 per Android non ha z-indici. Essi gestire il proprio ordine di disegno
trovato una soluzione:
Marker.showInfoWindow();
Questo non è ottimale perché fa apparire la finestra delle informazioni sopra l'indicatore ma è meglio di niente.
È possibile effettuare InfoWindowAdapter ritorno 0 da 0 pixel Visualizza in questo caso. –
Inutile che Google non ha implementato questo. Ne ho bisogno per la mia app, e non riesco a capire perché lo sviluppatore non dovrebbe essere in grado di controllarlo. Questa soluzione è meglio di niente, ma si sente davvero hacky e non abbastanza versatile per la mia app. –
sì funziona, ma solo fino a quando non abbiamo cliccato sulla mappa. Ho un numero di marcatori, tutti hanno una propria finestra informativa, ma sto usando showinfowindow() per quel marcatore che voglio mostrare in alto, mentre clicco sulla mappa, la finestra informativa nasconde e il marcatore si nasconde. –
Credo che questo post sia un duplicato di Google Maps v2 Marker zOrdering - Set to top. La risposta di Bastien Beurier utilizza la soluzione Marker.showInfoWindow() e mostra anche come creare una finestra a 0 0 0 se non si desidera effettivamente che venga visualizzata la finestra dell'infinito.
Nota anche il mio commento sotto la risposta sull'aggiunta di una TextView a LinearLayout.
La versione 27 giugno 2016, v9.2.0, di Android Maps API v2 ora supporta uno z-index - vedere l'annuncio allo https://developers.google.com/maps/documentation/android-api/releases#june_27_2016.
permette ai mappe/versione servizi di riproduzione è impostata v9.2.0 o superiore in build.gradle
:
compile 'com.google.android.gms:play-services-maps:9.2.0'
La documentazione z-index è inferiore (da https://developers.google.com/maps/documentation/android-api/marker#marker_z-index):
Il z-index specifica l'ordine di stack di questo indicatore, relativo ad altri indicatori sulla mappa. Un marcatore con un alto indice z è disegnato in cima a marcatori con indici z inferiori. Il valore z-index predefinito è 0.
I marker vengono sempre disegnati sopra i layer di tile e altri overlay non marker (overlay a terra, polilinee, poligoni e altre forme) indipendentemente dall'indice z degli altri overlay. I marker sono effettivamente considerati in un gruppo z-index separato rispetto ad altri overlay.
È possibile impostare l'indice quando si aggiunge l'indicatore sulla mappa:
map.addMarker(new MarkerOptions()
.position(new LatLng(10, 10))
.title("Marker z1")
.zIndex(1.0f));
... o utilizzando Marker.setZIndex()
dopo la creazione del marcatore.
Maggiori documentazione sugli effetti della z-index su eventi click è al di sotto (da https://developers.google.com/maps/documentation/android-api/marker#marker_click_events):
- Quando un utente fa clic su un cluster di marcatori, l'evento click viene attivato per il marcatore con lo z-index più alto.
- Al massimo un evento viene attivato per clic. In altre parole, il clic non viene passato ai marcatori o ad altre sovrapposizioni con valori di z-index più bassi.
- Fare clic su un gruppo di marker fa sì che i clic successivi ciclichino attraverso il cluster, selezionando ciascuno a turno.L'ordine del ciclo dà la priorità allo z-index, quindi alla vicinanza al punto di click.
- Se l'utente fa clic fuori dalla prossimità del cluster, l'API ricalcola il cluster e reimposta lo stato del ciclo di clic in modo che inizi dall'inizio.
- L'evento click cade attraverso i cluster di indicatori in altre forme e sovrapposizioni prima di riavviare il ciclo.
- I marker vengono effettivamente considerati in un gruppo z-index separato rispetto ad altri overlay o forme (polilinee, poligoni, cerchi e/o sovrapposizioni di terra), indipendentemente dall'indice z degli altri overlay. Se più marcatori, sovrapposizioni o forme sono sovrapposti l'uno sull'altro, l'evento click viene prima ciclizzato attraverso il gruppo di marcatori, quindi attivato per altre sovrapposizioni o forme cliccabili, in base ai loro valori z-index.
Grazie mi hai salvato –
- 1. Android Maps API v2 Modifica icona MyLocation
- 2. Mappa non in emulatore android api v2
- 3. Z ordine in xml android
- 4. Bitmap di ridisegno su Google Maps v2 per Android
- 5. Come posso gestire lo spostamento della mappa con Google Maps per Android V2?
- 6. Indicatori di centro API V2 per Android Google maps
- 7. Android Studio Maps Api v2
- 8. Salvataggio dello stato di MapFragment (Maps v2) in Android
- 9. Android Maps V2 newLatLngBounds con cuscinetto
- 10. Sostituzione per ItemizedOverlay in Google Maps V2 per Android?
- 11. Google Maps API Android v2 Overlay
- 12. Ordine z della finestra in java
- 13. Modifica la dimensione dell'indicatore nell'API di Google Maps v2
- 14. Modifica oggetto v2 mapOptions di Google Maps dopo il caricamento
- 15. Android Google Maps V2 Posizione utente
- 16. Ordine Z in JavaFX
- 17. Android Google Maps Api V2, ottenendo le coordinate per il centro mappa corrente
- 18. Android Google Maps v2 Animazione fotocamera
- 19. Attivazione di un evento mappa (come un clic su un marker) in Google maps Android V2
- 20. Numero massimo iniziale di zIndex per Google Maps Indicatori V3
- 21. Imposta il centro di posizione della mappa - GMaps v2 - Android
- 22. Google Maps Android V2 - Schermo vuoto
- 23. Google Maps Android API v2 in Cina - Mappa di carico sono voluti circa un'ora
- 24. Come ottenere il centro della mappa per le mappe android v2?
- 25. codice per aggiungere marcatori alla mappa utilizzando android google maps v2
- 26. Mappa Android V2 - Perché autorizzazione MAPS_RECEIVE
- 27. API di Google Maps per Android v2, come rimuovere le polilinee dalla mappa?
- 28. frammenti, android: zAdjustment (ordine z) e animazioni
- 29. GoogleMap V2 carica la mappa in modo casuale Android
- 30. Che cosa corrisponde geopoint in Android Google Maps API V2?
2016 e questo non è più vero .. zindex – amalBit
la sua non è vero oggi –