在 GMSMapview 中显示两个位置的定位相机 iOS

Positioning camera that shows two places in GMSMapview iOS

我在 iOS 应用程序中使用 Google 地图服务 GMSMapview。因为我有两个 CLLocationCoordinates。一个是当前位置,另一个是目标位置。我正在尝试使地图适合这两个地方。

但是相机位置并没有设置在这两点之内。我尝试了以下代码,

CLLocationCoordinate2D start = CLLocationCoordinate2DMake(newLoc.coordinate.latitude, newLoc.coordinate.longitude);
CLLocationCoordinate2D end = CLLocationCoordinate2DMake(_retailerVO.R_Latitude, _retailerVO.R_Longitude);
GMSCoordinateBounds *gBounds =
[[GMSCoordinateBounds alloc] initWithCoordinate:start coordinate:end];
GMSCameraPosition *gCamera = [mapView_ cameraForBounds:gBounds insets:UIEdgeInsetsZero];
mapView_.camera = gCamera;

有什么方法可以实现我想要的吗?感谢所有建议。

添加带边界的填充,对我有用,希望对你有帮助,

GMSCoordinateBounds *bounds = [[GMSCoordinateBounds alloc] initWithCoordinate:start coordinate:end];

[self.viewMapView animateWithCameraUpdate:[GMSCameraUpdate fitBounds:bounds withPadding:100.0f]];

在Swift

 let bounds = GMSCoordinateBounds(coordinate: sourcePosition, coordinate: endPosition)
 let camera: GMSCameraUpdate = GMSCameraUpdate.fit(bounds)
 //  let cameraWithPadding: GMSCameraUpdate = GMSCameraUpdate.fit(bounds, withPadding: 100.0) (will put inset the bounding box from the view's edge)

 self.mapView.animate(with: camera)