Menambahkan penanda ke peta

Pilih platform: Android iOS JavaScript

Penanda di peta 3D

Contoh kode berikut menunjukkan cara menambahkan penanda dasar ke peta 3D dengan memanggil 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).