我希望谷歌地图标记保持在地图的中心,而相机位置可以改变iOS SDK

Rav*_*mar 4 google-maps google-maps-markers ios

我正在开发一个使用谷歌地图的 iOS 应用程序。我希望在拖动地图或更改相机位置时将标记粘贴到屏幕中心。我已经实现了下面的代码。它将标记保持在屏幕的中心,但是当我们拖动地图并重新定位到中心时,标记会移动。我希望它保持在屏幕中央而不移动。

- (void)mapView:(GMSMapView *)pMapView didChangeCameraPosition:(GMSCameraPosition *)position {

    /* move draggable pin */
    if (movingMarker) {
        CLLocationCoordinate2D location = pMapView.camera.target;
        [movingMarker setPosition:location];
        return;
    }
}
Run Code Online (Sandbox Code Playgroud)

提前致谢!

Fah*_*mov 6

解决办法很简单!只需将图像视图放置在地图视图之上,使图像视图大小相同(放置相同的约束或自动调整大小),然后将图钉图像设置为图像视图,设置.center contentMode为图像视图。就是这样!您不必向地图视图本身添加标记。如果你想获得图钉(地图视图中心)坐标,请使用mapView.projection.coordinate(for: CGPoint)谷歌地图,你必须通过地图视图的中心点。祝你好运!