我从核心位置的locationManager中检索到用户位置的CLLocation
。为了计算到 map 项的距离,我想将CLLocation
转换为MKMapItem
。
我收集到您可以获取CLLocation
的坐标,从它们中生成一个MKPlacemark
,最后从MKMapItem
中生成一个MKPlacemark
,执行以下操作:
let currentLocation:CLLocation = locationManager.location
var coord : CLLocationCoordinate2D = currentLocation.coordinate
let myPlacemark = MKPlacemark(coordinate: coord)
let myMapItem = MKMapItem(placemark: myPlacemark)
这个任务的执行时间似乎很长,我想知道,是否没有其他直接的方法可以做到这一点?
在此先感谢您的任何建议。
最佳答案
由于这是您要创建的MKMapItem的用户的当前位置,因此可以执行以下操作:
let myMapItem = MKMapItem.mapItemForCurrentLocation()
这也省去了获取用户位置的麻烦! :)