我遇到一个问题,当用户点击按钮时会自动缩小地图,该按钮将开始跟踪用户的位置变化,就像Apple Map应用程序在您点击一次锚点按钮时所做的那样。
在设置跟踪模式之前,我尝试再次设置区域,但它不起作用。我确实注意到了一件事。只有当用户没有改变缩放级别时才会发生这种情况,即,如果用户在按下按钮之前捏住地图,则会保留地图的缩放级别。
我试图在代码中模仿,但到目前为止,我没有运气。
我的问题很简单:有没有办法为用户跟踪模式设置默认缩放级别?如果没有,我可以以某种方式模仿用户的捏(可能是手势识别器动作?)来强制设置范围吗?
提前致谢!
注意:我在Stackoverflow上搜索了答案,但只找到了this之类的答案。
答案 0 :(得分:0)
我正在使用用户跟踪模式,它放大了关闭我的应用程序设计。如果我理解你的问题,这就是你正在寻找的。 p>
@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)
}
}