ios - 在跟踪用户位置时保留 map 缩放级别

标签 ios swift mkmapview mapkit mkusertrackingmode

我遇到了一个问题,当用户点击将开始跟踪用户位置变化的按钮时, 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/

相关文章:

javascript - 如果通过网页安装的应用程序在 Safari 中如何打开?

ios - 用 "const constant"声明变量的目的是什么?

xcode 6.1.1 导出为 Mac 安装程序包应用程序崩溃

ios - 使用多个图钉在 map 中定位用户的位置

ios - 如何解决按下按钮时出现 "class is not key value coding-compliant"错误?

ios - Swift函数参数命名

ios - 如何正确使用协议(protocol)来调用 GameViewController 的函数?

swift - 在 React Native 应用程序的库中找不到嵌入式框架的头文件

ios - react native 不变违规 : Element type is invalid

swift - 如何在 MapView 上绘制两个 MKPolygon,而不让它们连接?