คุณระบุลักษณะการทำงานของเครื่องหมายเมื่อชนกับเครื่องหมายอื่นหรือป้ายกำกับแผนที่ได้โดยตั้งค่าพร็อพเพอร์ตี้
collisionBehavior
เป็นค่าใดค่าหนึ่งต่อไปนี้
REQUIRED: เครื่องหมายควรแสดงเสมอไม่ว่าจะมีการทับซ้อนกันหรือไม่REQUIRED_AND_HIDES_OPTIONAL: เครื่องหมายควรแสดงเสมอไม่ว่า จะมีการทับซ้อนกันหรือไม่ก็ตาม เครื่องหมายที่มีOPTIONAL_AND_HIDES_LOWER_PRIORITYลักษณะการทำงานเมื่อเกิดการชนกัน หรือป้ายกำกับแผนที่เริ่มต้นที่ทับซ้อนกับเครื่องหมายนี้จะถูกซ่อนOPTIONAL_AND_HIDES_LOWER_PRIORITY: ควรแสดงเครื่องหมายเฉพาะในกรณีที่ไม่ทับซ้อนกับเครื่องหมายอื่น หากเครื่องหมาย 2 รายการประเภทนี้ซ้อนทับกัน ระบบจะแสดงเครื่องหมายที่มี ลำดับการวาดสูงกว่า หากมีลำดับการวาดภาพเหมือนกัน ระบบจะแสดงภาพที่มี ตำแหน่งหน้าจอแนวตั้งต่ำกว่า
ตัวอย่างโค้ดต่อไปนี้แสดงค่าลักษณะการทำงานเมื่อเกิดการชนกันแต่ละค่า หากต้องการใช้ตัวอย่างโค้ดนี้ ให้ทําตามวิธีการใน
การตั้งค่าและ
เพิ่มแผนที่ 3 มิติลงในแอปเพื่อตั้งค่า
โปรเจ็กต์ Android Studio ด้วยแผนที่ 3 มิติพื้นฐาน จากนั้นเพิ่มโค้ดต่อไปนี้ลงในไฟล์
MainActivity.kt
// Add imports import com.google.android.gms.maps3d.model.latLngAltitude ... // Marker 1: REQUIRED googleMap3D.addMarker(markerOptions { position = latLngAltitude { latitude = 52.52027645136134 longitude = 13.408271658592406 altitude = 0.0 } label = "Collision Behavior: REQUIRED" altitudeMode = AltitudeMode.CLAMP_TO_GROUND isExtruded = true isDrawnWhenOccluded = true collisionBehavior = CollisionBehavior.REQUIRED }) // Marker 2: REQUIRED_AND_HIDES_OPTIONAL googleMap3D.addMarker(markerOptions { position = latLngAltitude { latitude = 52.519605780912585 longitude = 13.406867190588198 altitude = 150.0 } label = "Colliding Behavior: REQUIRED_AND_HIDES_OPTIONAL" altitudeMode = AltitudeMode.ABSOLUTE isExtruded = true isDrawnWhenOccluded = true collisionBehavior = CollisionBehavior.REQUIRED_AND_HIDES_OPTIONAL }) // Marker 3: OPTIONAL_AND_HIDES_LOWER_PRIORITY googleMap3D.addMarker(markerOptions { position = latLngAltitude { latitude = 52.519882191069016 longitude = 13.407410777254293 altitude = 50.0 } label = "Colliding Behavior: OPTIONAL_AND_HIDES_LOWER_PRIORITY" altitudeMode = AltitudeMode.RELATIVE_TO_GROUND isExtruded = true isDrawnWhenOccluded = true collisionBehavior = CollisionBehavior.OPTIONAL_AND_HIDES_LOWER_PRIORITY })