为这个荒谬的初级问题道歉,但出于某种原因,我无法掌握如何阻止这种情况发生。
当我运行应用程序,并且我捏缩放到地图(或向外,或离开我的位置)时,应用程序将始终将我拉回到设定的高度和我的位置。我希望不会发生这种情况,只是拥有缩放到任何级别并在不被打断的情况下四处移动的体验。
有什么想法吗?
这是我VC的代码片段:
let regionRadius: CLLocationDistance = 2000
func centerMapOnLocation(location: CLLocation) {
let coordinateRegion = MKCoordinateRegionMakeWithDistance(location.coordinate, regionRadius, regionRadius)
mapView.setRegion(coordinateRegion, animated: true)
}
func locationManager(_ manager: CLLocationManager, didUpdateLocations locations: [CLLocation]) {
let location = locations[0]
let center = location.coordinate
let span = MKCoordinateSpan(latitudeDelta: 0.05, longitudeDelta: 0.05)
let region = MKCoordinateRegion(center: center, span: span)
mapView.setRegion(region, animated: true)
mapView.showsUserLocation = true
}
感谢您的帮助
答案 0 :(得分:0)
可以非常频繁地随时调用位置管理器委托方法。所以你需要停止更新位置。
func locationManager(manager: CLLocationManager, didUpdateLocations locations: [CLLocation]) {
manager.stopUpdatingLocation()
manager.delegate = nil
let location = locations[0]
...
}