Na tej stronie opisujemy, jak zarządzać konfliktami między znacznikami dodawanymi do mapy a etykietami domyślnymi, takimi jak ciekawe miejsca czy nazwy ulic.
Zanim zaczniesz
Aby zarządzać konfliktami znaczników i etykiet, musisz używać identyfikatora mapy.
Jeśli używasz bitmapy mapy w wersji uproszczonej, nie możesz zarządzać konfliktami znaczników i etykiet.Określanie priorytetów znaczników
Użyj formularza Marker
.CollisionBehavior
, aby określić priorytet znacznika.
Użyj jednej z tych wartości:
REQUIRED
– wartość domyślna. Wymaga wyświetlenia znacznika, który nakłada się z innymi znacznikami, etykietami i ciekawymi miejscami.OPTIONAL_AND_HIDES_LOWER_PRIORITY
– wskazuje, że znacznik może zostać zastąpiony wymaganym znacznikiem albo zostać zastąpiony znacznikiemOPTIONAL_AND_HIDES_LOWER_PRIORITY
o wyższym priorytecie. AtrybutzIndex
pomaga określić względny priorytet między znacznikamiOPTIONAL_AND_HIDES_LOWER_PRIORITY
. Wyższa wartośćzIndex
oznacza wyższy priorytet.REQUIRED_AND_HIDES_OPTIONAL
– wymagane jest wyświetlenie znacznika oraz ukrywania znacznikówOPTIONAL_AND_HIDES_LOWER_PRIORITY
, etykiet i ciekawych miejsc, które się z nim nakładają. Znacznik może się pokrywać z innymi wymaganymi znacznikami.
Poniższy przykładowy kod przedstawia ustawienie CollisionBehavior
nowego znacznika:
Kotlin
val marker = map.addMarker( MarkerOptions() .position(LatLng(10.0, 10.0)) .zIndex(10f) // Optional. .collisionBehavior(Marker.CollisionBehavior.OPTIONAL_AND_HIDES_LOWER_PRIORITY) )
Java
Marker marker = map.addMarker( new MarkerOptions() .position(new LatLng(10, 10)) .zIndex(10) // Optional. .collisionBehavior(Marker.CollisionBehavior.OPTIONAL_AND_HIDES_LOWER_PRIORITY));