Marker Click上的Swift Google地图中心

Rup*_*ert 8 swift

我正在尝试将Google地图置于标记的中心,并在用户点按标记时进行缩放.我可以使用click委托在Android中执行此操作,但我找不到在Swift中执行此操作的方法.

有没有人有任何提示或建议来解决这个问题?

Mar*_*kri 5

你必须符合 GMSMapViewDelegate 协议,然后你有下面的功能:

func mapView(mapView: GMSMapView, didTapMarker marker: GMSMarker) -> Bool {

    //you can handle zooming and camera update here 

}
Run Code Online (Sandbox Code Playgroud)

您可以通过为多个位置创建边界来更新相机,例如:(您也可以为边界提供填充)

let bounds = GMSCoordinateBounds(coordinate: self.userLocation!.coordinate, coordinate: marker.position)
self.mapView.animateWithCameraUpdate(GMSCameraUpdate.fitBounds(bounds, withPadding: 120.0))
Run Code Online (Sandbox Code Playgroud)

并且您还可以使用一个缩放级别的位置更新相机位置,例如:

self.mapView?.camera = GMSCameraPosition.cameraWithTarget(marker.position, zoom: 9.0)
Run Code Online (Sandbox Code Playgroud)