我正在使用谷歌地图sdk for IOS。我使用GMSCoordinateBounds()方法设置了地图的边界。
我在地图边界滚动时遇到了一些问题。 不确定,如果这是IOS本机行为或与代码相关的东西。
实际行为: 经历边界的粗糙行为。 在界限内工作正常。
预期行为: 它应该在边界处停止滚动或放大效果,以避免粗暴行为。
这是我的代码
var mapView = GMSMapView()
var defaultCamera = GMSCameraPosition()
defaultCamera = GMSCameraPosition(target: CLLocationCoordinate2D(latitude: 12.3019, longitude: 104.0923),
zoom: zoomLevels[0],
bearing: defaultCamera.bearing,
viewingAngle: defaultCamera.viewingAngle)
mapView.delegate = self
mapView.mapStyle = MapUtils().style
mapView.camera = defaultCamera
mapView.setMinZoom(10, maxZoom: 21)
// enable google map view handle other gesture
mapView.settings.consumesGesturesInView = false
mapView.settings.rotateGestures = false
mapView.settings.tiltGestures = false
mapView.settings.allowScrollGesturesDuringRotateOrZoom = false
// override double tap to zoom in
let tapGesture = UITapGestureRecognizer(target: self, action: #selector(googleMapDoubleTap))
tapGesture.numberOfTapsRequired = 2
mapView.addGestureRecognizer(tapGesture)
self.myLocationMarker.map = self.mapView
任何帮助将不胜感激。 提前谢谢..
答案 0 :(得分:0)
解决方案是在配置for line in read_file:
time.sleep(0.5)
start_new_thread(request_to_server_and_write_to_file, (line))
时简单地添加此行:
GMSMapview
或
您可以将此行allowScrollGesturesDuringRotateOrZoom用于_mapView.settings.allowScrollGesturesDuringRotateOrZoom = NO;
。它控制是否可以偏心地执行旋转和缩放手势并滚动。默认值为YES。
GMSMapview
因此,通过将其设置为NO / false,您现在可以在标记位置不移动时执行缩放。