在 Swift 中将 CLLocation 转换为 MKMapItem
Posted
技术标签:
【中文标题】在 Swift 中将 CLLocation 转换为 MKMapItem【英文标题】:Convert CLLocation to MKMapItem in Swift 【发布时间】:2018-10-21 01:36:03 【问题描述】:我有一个 CLLocation
用于我从核心位置的 locationManager 中检索到的用户位置。为了计算到地图项的距离,我想将CLLocation
转换为MKMapItem
。
我猜你可以得到CLLocation
的坐标,从他们那里创建一个MKPlacemark
,最后从MKPlacemark
创建一个MKMapItem
,执行如下操作:
let currentLocation:CLLocation = locationManager.location
var coord : CLLocationCoordinate2D = currentLocation.coordinate
let myPlacemark = MKPlacemark(coordinate: coord)
let myMapItem = MKMapItem(placemark: myPlacemark)
对于这项任务来说,这似乎相当冗长,我想知道是否没有更直接的方法可以做到这一点?
提前感谢您的任何建议。
【问题讨论】:
可以使用你this 【参考方案1】:由于您尝试创建的 MKMapItem 是用户的当前位置,因此您可以这样做:
let myMapItem = MKMapItem.mapItemForCurrentLocation()
也省去了获取用户位置的麻烦! :)
【讨论】:
以上是关于在 Swift 中将 CLLocation 转换为 MKMapItem的主要内容,如果未能解决你的问题,请参考以下文章
在 CoreData 中保存 Swift CLLocation