【问题标题】:google map changing center when zoom in ios sdk放大ios sdk时谷歌地图更改中心
【发布时间】:2015-08-26 07:30:04
【问题描述】:

我有一个 ios 应用程序,我在其中以编程方式将谷歌地图放大到某个缩放级别,但是当我这样做时,地图会改变它的中心。我希望能够在保持当前中心为中心的情况下进行放大。 谁能帮帮我。

代码如下:

GMSCameraPosition *camera = [GMSCameraPosition cameraWithLatitude:18.5600
                                                        longitude:73.7903
                                                             zoom:12];

mapView_ = [GMSMapView mapWithFrame:CGRectZero camera:camera];
mapView_.myLocationEnabled = YES;
mapView_.userInteractionEnabled =YES;
mapView_.delegate = self;
mapView_.settings.myLocationButton = YES;
mapView_.settings.compassButton = YES;
mapView_.padding = UIEdgeInsetsMake(20, 0, 20, 0);
mapView_.mapType = kGMSTypeHybrid;
self.view = mapView_;

这就是我添加地图的方式。

然后在某些事件中,我将其缩放到缩放级别 14:

camera=[GMSCameraPosition cameraWithLatitude:lat longitude:lon zoom:14];
   [mapView_ setCamera:camera];

【问题讨论】:

  • 您可能需要提供一些代码来确定问题。
  • @PCLuddite 代码已添加。

标签: ios objective-c ios8 google-maps-sdk-ios


【解决方案1】:

这是一个较晚的答案,但希望将来能帮助遇到类似问题的人。

您应该将GMSMapView 对象的settings 中的allowScrollGesturesDuringRotateOrZoom 设置为false。这将在您缩放或旋转时禁用 GMSMapView 上的任何其他手势。

settings 这里是GMSUISettings 类,负责地图的所有用户界面设置。

mapView.settings.allowScrollGesturesDuringRotateOrZoom = false

【讨论】:

  • 但在我的情况下(地图 2.7.0),这仍然会改变中心位置 :-( 我无法滚动这是真的,但相机目标位置会更新。有什么方法可以防止这种情况发生?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-11-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-07-06
  • 1970-01-01
相关资源
最近更新 更多