gpt4 book ai didi

xcode - 从当前位置知道 MapView 中最近的引脚

转载 作者:搜寻专家 更新时间:2023-11-01 05:53:52 25 4
gpt4 key购买 nike

我正在使用一个 MapView,在城市中添加了一些图钉。此外,当前用户位置显示在 map 中。知道这两件事(用户位置和引脚)后,我想在标签中显示距离用户所在位置最近的引脚。

最佳答案

没有直接的 API 可以找到它。您必须遍历所有注释。

let pins = mapView.annotations as! [MKAnnotation]
let currentLocation = mapView.userLocation.location!

let nearestPin: MKAnnotation? = pins.reduce((CLLocationDistanceMax, nil)) { (nearest, pin) in
let coord = pin.coordinate
let loc = CLLocation(latitude: coord.latitude, longitude: coord.longitude)
let distance = currentLocation.distanceFromLocation(loc)
return distance < nearest.0 ? (distance, pin) : nearest
}.1

// Here, `nearestPin` is `nil` iff there is no annotations on the map.

如果您不知道reduce 方法,请参阅the docs .

关于xcode - 从当前位置知道 MapView 中最近的引脚,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32310344/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com