ตัวอย่างโค้ดต่อไปนี้แสดงวิธีเพิ่มเครื่องหมายพื้นฐานลงในแผนที่ 3 มิติโดย
เรียกใช้เมธอด addMarker
หากต้องการใช้ตัวอย่างโค้ดนี้ ให้ทําตามวิธีการใน
การตั้งค่าและเพิ่มแผนที่ 3 มิติลงในแอป
เพื่อตั้งค่าโปรเจ็กต์ Android Studio ด้วยแผนที่ 3 มิติพื้นฐาน จากนั้นเพิ่มโค้ดต่อไปนี้ลงในไฟล์ MainActivity.kt
// Add imports import com.google.android.gms.maps3d.model.latLngAltitude ... // Add to the onMap3DViewReady method, after the googleMap3D object has been initialized googleMap3D.setMapMode(Map3DMode.SATELLITE) googleMap3D.setCamera( camera { center = latLngAltitude { latitude = 52.51974795 longitude = 13.40715553 altitude = 150.0 } heading = 252.7 tilt = 79.0 range = 1500.0 } ) // Add a marker using absolute altitude positioning googleMap3D.addMarker(markerOptions { position = latLngAltitude { latitude = 52.519605780912585 longitude = 13.406867190588198 altitude = 150.0 } label = "Absolute (150m)" altitudeMode = AltitudeMode.ABSOLUTE isExtruded = true isDrawnWhenOccluded = true collisionBehavior = CollisionBehavior.REQUIRED_AND_HIDES_OPTIONAL })
รอเหตุการณ์การคลิกเครื่องหมาย
หากต้องการฟังเหตุการณ์คลิกในเครื่องหมาย ให้เรียกใช้ setClickListener ในออบเจ็กต์เครื่องหมาย ตัวอย่างต่อไปนี้แสดงวิธีตั้งค่าเครื่องมือฟังการคลิกในเครื่องหมาย
marker.setClickListener { lifecycleScope.launch(Dispatchers.Main) { Toast.makeText(this@MarkersActivity, "Clicked on marker: ${marker.label}", Toast.LENGTH_SHORT) .show() } }
โปรดทราบว่าตัวแฮนเดิลการคลิกจะไม่ทํางานในเธรดหลัก (หรือ UI) หากต้องการทำการเปลี่ยนแปลง UI (เช่น แสดงข้อความ Toast) คุณต้องเปลี่ยนไปใช้เทรดหลัก สำหรับ Kotlin คุณทำได้โดยใช้
lifecycleScope.launch(Dispatchers.Main)