Cómo configurar el nivel de región / zoom visible para Google Maps IOS para mostrar todos los marcadores agregados a la vista de map

He usado maps de Google en la aplicación ios, quiero configurar el nivel de zoom de forma dinámica depende de la búsqueda que hice sobre el map. Básicamente estoy agregando alfileres buscando con nombres de ciudades o lat / long query. después de cada búsqueda estoy agregando pines y necesito mostrar todos los marcadores agregados por la búsqueda reciente que hice.

@IBOutlet weak var mapView: GMSMapView! let camera = GMSCameraPosition.cameraWithLatitude(23.0793, longitude: 72.4957, zoom: 5) mapView.camera = camera mapView.delegate = self mapView.myLocationEnabled = true *** arry has dictionary object which has value of Latitude and Longitude. *** let path = GMSMutablePath() for i in 0..<arry.count { let dict = arry[i] as! [String:AnyObject] let latTemp = dict["latitude"] as! Double let longTemp = dict["longitude"] as! Double let marker = GMSMarker() marker.position = CLLocationCoordinate2D(latitude: latTemp, longitude: longTemp) marker.title = "Austrilia" marker.appearAnimation = kGMSMarkerAnimationNone marker.map = self.mapView path.addCoordinate(CLLocationCoordinate2DMake(latTemp, longTemp)) } let bounds = GMSCoordinateBounds(path: path) self.mapView!.animateWithCameraUpdate(GMSCameraUpdate.fitBounds(bounds, withPadding: 50.0)) 

Vea esta respuesta para una manera simple de iterar sobre una matriz dada de marcadores y luego establecer los límites en consecuencia.