התנהגות ההתנגשות קובעת איך סמן מוצג אם הוא מתנגש (חופף) עם סמן אחר.
הגדרת אופן הפעולה של סמן במקרה של התנגשות
כדי להגדיר את אופן הפעולה במקרה של התנגשות, מגדירים את GMSAdvancedMarker.collisionBehavior
לאחת מהאפשרויות הבאות:
GMSCollisionBehaviorRequired
(ברירת מחדל): הסמן תמיד מוצג, ללא קשר להתנגשות. זו התנהגות ברירת המחדל. אין לה השפעה על הצגה של סמנים אחרים או תוויות של מפת בסיס.
GMSCollisionBehaviorOptionalAndHidesLowerPriority
: הצגת הסמן רק אם הוא לא חופף לסמנים אחרים. אם שני סמנים מהסוג הזה חופפים, הסמן עם הערךzIndex
הגבוה יותר מוצג. אם יש להם אותוzIndex
, מוצג צילום המסך עם המיקום האנכי הנמוך יותר במסך.
GMSCollisionBehaviorRequiredAndHidesOptional
: תמיד להציג את הסמן, בלי קשר להתנגשות, ולהסתיר אתGMSCollisionBehaviorOptionalAndHidesLowerPriority
. הצגת הסמן רק אם הוא לא חופף לסמנים אחרים. לאGMSCollisionBehaviorRequired
. אם שני סמנים מהסוג הזה חופפים, הסמן עם הערךzIndex
הגבוה יותר מוצג. כללי התנגשות לסמנים עם אותוzIndex
לא מוגדרים.
Swift
// Defines a marker to always display and hide any marker or label overlay with this marker in the base map marker.collisionBehavior = .requiredAndHidesOptional
Objective-C
// Defines a marker to always display and hide any marker or label overlay with this marker in the base map marker.collisionBehavior = GMSCollisionBehaviorRequiredAndHidesOptional