ios - 如何使用适用于 iOS 的 mapbox 更改 showAnnotation 缩放?

标签 ios swift mapbox

我有一个方法(见下文)可以放大点击的注释。

func mapView(_ mapView: MGLMapView, didSelect annotation: MGLAnnotation) {
    print("Tapped")
    mapView.showAnnotations(pointAnnotations, animated: true)// this does the zooming
    mapView.deselectAnnotation(annotation, animated: false)
}

这是有效的,但是,我不喜欢它的缩放方式。 (目前,只要你点击,它就会开始缩放,然后稍微滞后它开始将对象居中,直到它到达正确的位置。此时它突然停止)

我如何更改它以模拟 Snapmaps 缩放?

我相信在他们的缩放中发生的事情是缩放在居中开始后一点点开始,而且这一切都发生得更快。此外,停止并不那么突然。我相信这很容易。

最佳答案

我所做的是使用以下内容使缩放看起来更好。查看here有关此缩放的更多信息和其他版本。

            let cam2 = mapView.cameraThatFitsShape(object.polyline!, direction: 0.0, edgePadding: .init(top: 20, left: 30, bottom: 100, right: 30))

            mapView.fly(to: cam2, withDuration: 0.25, completionHandler: nil)

关于ios - 如何使用适用于 iOS 的 mapbox 更改 showAnnotation 缩放?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54683669/

相关文章:

swift - Facebook SDK 无法正常工作 swift 3

ios - URLRequest 到 Alamofire URLConvertible

ios - 如何使用多个数组设置 for 循环作为变量以用作 Swift 2 中标记中的文本

ios - iOS 5 中的 View Controller 有什么方法可以指定要在导航堆栈推送上的后退按钮中使用的图像吗?

ios - 如何从 Alamofire 返回值

iphone - 如何在 iPhone 中以编程方式添加标签和文本框

ios - ScrollView 停在某个点

javascript - mapbox.js 上的自动完成输入

javascript - 循环遍历 Mapbox 中的坐标

ios - 在 Swift 中使用 NSDictionary JSON 填充 UITableView