MISE À JOUR: Cette question concernait MapBox. Le ci-dessous est juste pour les API Google Maps. Je suggère de vérifier les documents de MapBox pour voir s'ils permettent l'accès à la propriété ZIndex du marqueur sous-jacent.
Pour définir l'ordre Z des marqueurs (où map
est l'instance GoogleMap
):
var markerFront = new MarkerOptions();
markerFront.InvokeZIndex(1f); // Set the z-order
markerFront.SetTitle("In Front");
markerFront.SetPosition(new LatLng(lat, lon));
var markerBack = new MarkerOptions();
markerBack.InvokeZIndex(2f); // set the z-order
markerBack.SetTitle("behind");
markerBack.SetPosition(new LatLng(lat-0.0001, lon-0.0001));
map.AddMarker(markerFront);
map.AddMarker(markerBack);
Et markerFront
seront au-dessus markerBack
. Une fois que ces paramètres sont définis, ils seront modifiés par le système d'exploitation si vous cliquez sur markerBack
, il sera déplacé vers l'avant. Je ne suis pas sûr si l'ordre z peut être changé après la création du marqueur, donc si vous avez besoin de garder l'ordre z en cliquant sur un marqueur, je pense que vous devriez enlever et rajouter le marqueur avec le z -order vous voulez.
Je n'ai pas trouvé de moyen (après une recherche très brève) de changer l'ordre z du marqueur d'emplacement actuel. Personnellement, je pense que vous voudriez toujours l'indicateur d'emplacement actuel à l'avant de toute façon.
Je voudrais savoir comment faire cela avec le SDK Android aussi. – dazza5000