Contoh kode berikut menunjukkan cara menambahkan penanda dasar ke peta 3D dengan
menskalakan metode addMarker. Untuk menggunakan contoh kode ini, ikuti petunjuk di
Penyiapan dan Menambahkan peta 3D ke aplikasi Anda
untuk menyiapkan project Android Studio dengan peta 3D dasar. Kemudian, tambahkan kode
berikut ke file 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
})
Memproses peristiwa klik penanda
Untuk memantau peristiwa klik pada penanda, panggil setClickListener pada objek penanda. Contoh berikut menunjukkan cara menyetel pemroses klik pada penanda:
marker.setClickListener {
lifecycleScope.launch(Dispatchers.Main) {
Toast.makeText(this@MarkersActivity, "Clicked on marker: ${marker.label}", Toast.LENGTH_SHORT)
.show()
}
}
Perhatikan bahwa pengendali klik tidak berjalan di thread Utama (atau UI). Jika Anda
ingin melakukan perubahan pada UI (seperti menampilkan pesan Toast), Anda harus
beralih ke thread Utama. Untuk Kotlin, Anda dapat melakukannya menggunakan
lifecycleScope.launch(Dispatchers.Main).