4

我遇到了一个问题,当用户点击按钮时地图会自动缩小,该按钮将开始跟踪用户的位置变化,就像您点击一次锚按钮时 Apple Map 应用程序所做的那样。

我在设置跟踪模式之前尝试再次设置区域,但它不起作用。我确实注意到一件事。仅当用户不更改缩放级别时才会发生这种情况,即,如果用户在点击按钮之前捏住地图,则保留地图的缩放级别。

我试图在代码中模仿它,但到目前为止,我还没有运气。

我的问题很简单:有没有办法为用户跟踪模式设置默认缩放级别?如果没有,我可以以某种方式模仿用户的捏合(也许是手势识别器动作?)来强制设置范围吗?

提前致谢!

注意:我在 Stackoverflow 上搜索过答案,只找到了这样的答案

4

1 回答 1

1

我正在使用用户跟踪模式,它放大以关闭我的应用程序设计。如果我正确理解你的问题,这就是你要找的。

 @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)

    }

}
于 2017-05-02T17:42:38.600 回答