缩放而不改变相机中心

Zoom without changing Camera center

我有一个 GMSMapView 以用户的 GPS 位置为中心。

当用户双击时,地图的中心会移动到触摸的位置,而我只想在不更改相机位置的情况下缩放地图!

浏览了文档,无法弄清楚如何实现这一点。

通过深入研究他们的源代码,我终于找到了答案,因为文档中没有任何地方提到它!

这种特殊行为(在不改变相机中心的情况下缩放)是 GMSUISettings class 中名为 allowScrollGesturesDuringRotateOrZoom(谁会猜到!)的配置项,因此您可以在 class 中访问它=13=] 对象的 'settings' 属性 如下所示,

Obj-C:

mapView.settings.allowScrollGesturesDuringRotateOrZoom = NO;

Swift 2.1:

mapView.settings.allowScrollGesturesDuringRotateOrZoom = false

现在在缩放(双击/捏合)时,不会发生滚动,有效地保持相机视图不变!