マーカー、ラベル、スポットの競合を管理する

このページでは、地図に追加するマーカーとデフォルト ラベル(スポットや道路名など)との間の競合を管理する方法について説明します。

始める前に

マーカーとラベルの競合を管理するには、マップ ID を使用します。

ライトモード(地図のビットマップ画像)をご利用の場合、マーカーとラベルの競合を管理することはできません。

マーカーの優先度の指定

Marker.CollisionBehavior プロパティを使用して、マーカーの優先度を指定します。

次のいずれかの値を使用します。

  • REQUIRED - デフォルトです。表示が必須のマーカーであることを示します。他のマーカー、ラベル、スポットと重ねて表示します。
  • OPTIONAL_AND_HIDES_LOWER_PRIORITY - マーカーを「表示が必須の」マーカーで置き換えるか重ねることができること、またはより優先度の高い OPTIONAL_AND_HIDES_LOWER_PRIORITY マーカーで置き換えることができることを示します。zIndex を使用して、OPTIONAL_AND_HIDES_LOWER_PRIORITY マーカー間の相対的な優先度を決定します。zIndex の値が高いほど優先度が高くなります。
  • REQUIRED_AND_HIDES_OPTIONAL - 表示が必須のマーカーであることを示します。このマーカーと重なる OPTIONAL_AND_HIDES_LOWER_PRIORITY マーカー、ラベル、スポットは非表示にします。他の「表示が必須の」マーカーとは重ねることができます。

次のコードサンプルでは、新しいマーカーに CollisionBehavior を設定しています。

Java


Marker marker = map.addMarker(
    new MarkerOptions()
        .position(new LatLng(10, 10))
        .zIndex(10) // Optional.
        .collisionBehavior(Marker.CollisionBehavior.OPTIONAL_AND_HIDES_LOWER_PRIORITY));

      

Kotlin


val marker = map.addMarker(
    MarkerOptions()
        .position(LatLng(10.0, 10.0))
        .zIndex(10f) // Optional.
        .collisionBehavior(Marker.CollisionBehavior.OPTIONAL_AND_HIDES_LOWER_PRIORITY)
)