إدارة العلامات والتصنيفات وتصادمات نقاط الاهتمام

تعرض لك هذه الصفحة كيفية إدارة التعارضات بين العلامات التي تضيفها إلى خريطتك والعلامات الافتراضية، مثل نقاط الاهتمام أو أسماء الشوارع.

قبل البدء

لإدارة تعارض العلامات والتصنيفات، يجب استخدام معرِّف الخريطة.

إذا كنت تستخدم صورة نقطية لخريطة من خلال الوضع البسيط، فلا يمكنك إدارة تعارض العلامات والتصنيفات.

تحديد أولويات العلامات

يمكنك استخدام 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)
)