我遇到了一个问题,当用户点击将开始跟踪用户位置变化的按钮时, map 会自动缩小,就像 Apple Map 应用程序在您点击一次 anchor 按钮时所做的那样。
在设置跟踪模式之前,我尝试再次设置区域,但没有成功。不过我确实注意到一件事。只有当用户不更改缩放级别时才会发生这种情况,即,如果用户在点击按钮之前捏住 map , map 的缩放级别将保留。
我试图在代码中模仿它,但到目前为止,我没有运气。
我的问题很简单:有没有办法为用户跟踪模式设置默认缩放级别?如果不是,我能否以某种方式模仿用户的捏合(可能是手势识别器 Action ?)来强制设置范围?
提前致谢!
注意:我在 Stackoverflow 上搜索了答案,只找到了像 this 这样的答案。 .
最佳答案
我正在使用用户跟踪模式,它会放大以关闭我的应用程序设计。如果我正确理解了您的问题,这就是您要查找的内容。
@IBAction func getUserLocationPressed(_ sender: AnyObject) {
if CLLocationManager.authorizationStatus() == .authorizedWhenInUse {
let span = MKCoordinateSpanMake(1.0, 1.0)
let location = CLLocationCoordinate2D(latitude: mapView.userLocation.coordinate.latitude, longitude: mapView.userLocation.coordinate.longitude)
let coordinateRegion = MKCoordinateRegion(center: location, span: span)
mapView.setRegion(coordinateRegion, animated: true)
}
}
关于ios - 在跟踪用户位置时保留 map 缩放级别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36501471/