如何使用 Kotlin 在谷歌地图上添加标记?

sin*_*cum 2 android google-maps kotlin

我是 Android 编程的初学者。我想通过点击地图屏幕在该点添加标记。所以我尝试了下面的编码。但这不起作用。

override fun onMapReady(googleMap: GoogleMap) {
    mMap = googleMap

    mMap.setOnMapClickListener(object :GoogleMap.OnMapClickListener {
        override fun onMapClick(latlng :LatLng) {
            val location = LatLng(latlng.latitude,latlng.longitude)
            mMap.addMarker(MarkerOptions().position(location))
        }
    })
}
Run Code Online (Sandbox Code Playgroud)

Waq*_*Haq 5

Marker在添加GoogleMap之前,我建议清理地图并将相机设置为新的点击位置。

希望这对您有帮助:

override fun onMapReady(googleMap: GoogleMap) {
    mMap = googleMap

    mMap.setOnMapClickListener(object :GoogleMap.OnMapClickListener {
        override fun onMapClick(latlng :LatLng) {
            // Clears the previously touched position
            mMap.clear();
            // Animating to the touched position
            mMap.animateCamera(CameraUpdateFactory.newLatLng(latLng));

            val location = LatLng(latlng.latitude,latlng.longitude)
            mMap.addMarker(MarkerOptions().position(location))
        }
    })
}
Run Code Online (Sandbox Code Playgroud)