O exemplo de código a seguir demonstra como adicionar um marcador básico a um mapa 3D chamando o método addMarker. Para usar este exemplo de código, siga as instruções em
Configuração e Adicionar um mapa 3D ao seu app
para configurar seu projeto do Android Studio com um mapa 3D básico. Em seguida, adicione o código abaixo ao arquivo 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 })
Detectar eventos de clique no marcador
Para detectar eventos de clique em um marcador, chame setClickListener no objeto do marcador. O exemplo a seguir mostra como definir um listener de clique em um marcador:
marker.setClickListener { lifecycleScope.launch(Dispatchers.Main) { Toast.makeText(this@MarkersActivity, "Clicked on marker: ${marker.label}", Toast.LENGTH_SHORT) .show() } }
O gerenciador de cliques não é executado na linha de execução principal (ou de interface). Se você
quiser fazer mudanças na UI (como mostrar uma mensagem Toast), mude
para a linha de execução principal. Para Kotlin, use
lifecycleScope.launch(Dispatchers.Main).