การดำเนินการสำหรับการซ้อนทับจะควบคุมวิธีที่เครื่องหมายแสดงหากซ้อนทับ (ทับซ้อน) กับเครื่องหมายอื่น
ตั้งค่าการดำเนินการสำหรับการซ้อนทับของเครื่องหมาย
หากต้องการตั้งค่าการดำเนินการสำหรับการซ้อนทับ ให้ตั้งค่า GMSAdvancedMarker.collisionBehavior เป็นค่าใดค่าหนึ่งต่อไปนี้
GMSCollisionBehaviorRequired(ค่าเริ่มต้น): แสดงเครื่องหมายเสมอไม่ว่าจะเกิดการทับซ้อนหรือไม่ นี่คือลักษณะการทำงานเริ่มต้น ไม่มีผลต่อการแสดงเครื่องหมายหรือป้ายกำกับแผนที่ฐานอื่นๆGMSCollisionBehaviorOptionalAndHidesLowerPriority: แสดงเครื่องหมายเฉพาะในกรณีที่ไม่ทับซ้อนกับเครื่องหมายอื่นๆ หากเครื่องหมายประเภทนี้ 2 รายการซ้อนทับกัน ระบบจะแสดงเครื่องหมายที่มีzIndexสูงกว่า หากมีzIndexเดียวกัน ระบบจะแสดงรายการที่มีตำแหน่งหน้าจอแนวตั้งต่ำกว่าGMSCollisionBehaviorRequiredAndHidesOptional: แสดงเครื่องหมายเสมอไม่ว่าจะมีการทับซ้อนหรือไม่ และซ่อนGMSCollisionBehaviorOptionalAndHidesLowerPriorityแสดงเครื่องหมายเฉพาะในกรณีที่ไม่ทับซ้อนกับเครื่องหมายอื่นๆ ไม่GMSCollisionBehaviorRequiredหากเครื่องหมายประเภทนี้ 2 รายการซ้อนทับกัน ระบบจะแสดงเครื่องหมายที่มี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