如何获得马克的经度和纬度斯威夫特

Ari*_*ang 0 google-maps google-maps-markers swift swift3

我有地图视图,用户可以拖动标记.标记点按时,会显示包含标记位置的代码段.

如何获得标记的经度和纬度?如果标记被拖动到另一个位置.

这就是我所做的:

var latitude = -7.034323799999999
var longitude = 110.42400399999997
var displayAddress = [String]()

func customizeMap() {
    mapView.delegate = self
    let camera = GMSCameraPosition.camera(withLatitude: Double(latitude), longitude: Double(longitude), zoom: 17)
    mapView.animate(to: camera)

    let markerImage = UIImage(named: "ic_home_detail_marker_location")

    let markerView = UIImageView(image: markerImage)

    let marker = GMSMarker()
    marker.position = CLLocationCoordinate2DMake(Double(latitude), Double(longitude))
    marker.isDraggable = true
    marker.iconView = markerView
    marker.snippet = displayAddress[0]
    mapView.selectedMarker = marker
    marker.map = mapView
}
Run Code Online (Sandbox Code Playgroud)

现在我正在使用静态经度和纬度

Nir*_*v D 6

为此你可以使用didBeginDragging markerdidEndDragging marker委托方法GMSMapViewDelegate.

func mapView(_ mapView: GMSMapView, didDrag marker: GMSMarker) {
    print("Drag")
}

func mapView(_ mapView: GMSMapView, didBeginDragging marker: GMSMarker) {
    print("Old Coordinate - \(marker.position)")
}

func mapView(_ mapView: GMSMapView, didEndDragging marker: GMSMarker) {
    print("New Coordinate - \(marker.position)")
}
Run Code Online (Sandbox Code Playgroud)