我有一个mapkit视图,从前一个视图发送数据,这很好。我需要了解的是如何将源位置设置为用户的当前位置。这是我的代码行:
let sourcelocation = CLLocationCoordinate2D(latitude: track.lat, longitude: track.lon)
let destinationLocation = CLLocationCoordinate2D(latitude: track.lat, longitude: track.lon)
当我跑步时,显然这会将2个引脚放在完全相同的位置。
我不确定要在sourceLocation行放入什么内容以显示当前位置。
我的代码中已经有以下几行:
var myLocation:CLLocationCoordinate2D
self.locationManager.requestAlwaysAuthorization()
self.locationManager.requestWhenInUseAuthorization()
if CLLocationManager.locationServicesEnabled() {
locationManager.delegate = self
locationManager.desiredAccuracy = kCLLocationAccuracyBest
locationManager.startUpdatingLocation()
}
我告诉我的代表:
CLLocationManagerDelegate
我只是不确定现在要去哪里。
最终我试图让它绘制一条路线并允许您从当前位置导航到目的地。
答案 0 :(得分:3)
您可以通过CLLocationManager获取当前位置坐标:
让sourcelocation = self.locationManager.location?.coordinate
答案 1 :(得分:3)
由于您正在使用MapKit,因此您可能在某些时候实现了MapView。如果有意义,可以使用
mapView.userLocation.location
获取设备的位置。