जब कोई मार्कर किसी दूसरे मार्कर से टकराता है (ओवरलैप होता है), तो मार्कर के दिखने का तरीका, टक्कर के व्यवहार से कंट्रोल होता है.
मार्कर के लिए, टक्कर का व्यवहार सेट करना
कॉलिज़न व्यवहार सेट करने के लिए, 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