หน้านี้แสดงวิธีจัดการการชนกันระหว่างเครื่องหมายที่คุณเพิ่มลงในแผนที่และป้ายกำกับเริ่มต้น เช่น จุดที่น่าสนใจ (POI) หรือชื่อถนน
ก่อนเริ่มต้น
หากต้องการจัดการความขัดแย้งของเครื่องหมายและป้ายกำกับ คุณต้องใช้รหัสการแมป
หากคุณใช้รูปภาพบิตแมปของแผนที่ผ่านโหมด Lite คุณจะไม่สามารถจัดการความขัดแย้งของเครื่องหมายและป้ายกำกับได้การระบุลำดับความสำคัญของเครื่องหมาย
ใช้ 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
สำหรับเครื่องหมายใหม่
Kotlin
val marker = map.addMarker( MarkerOptions() .position(LatLng(10.0, 10.0)) .zIndex(10f) // Optional. .collisionBehavior(Marker.CollisionBehavior.OPTIONAL_AND_HIDES_LOWER_PRIORITY) )
Java
Marker marker = map.addMarker( new MarkerOptions() .position(new LatLng(10, 10)) .zIndex(10) // Optional. .collisionBehavior(Marker.CollisionBehavior.OPTIONAL_AND_HIDES_LOWER_PRIORITY));