如何在 Swift 中使用 MapKit 在兩個地點之間繪製路線?


要在地圖上繪製兩點之間的路線,我們需要這兩個點的座標。

一旦有了兩個點的座標,我們可以使用下面給出的函式在 map 中兩個點之間顯示線路。在本例中,我將使用兩個隨機位置作為兩點。

func getDirections(loc1: CLLocationCoordinate2D, loc2: CLLocationCoordinate2D) {
   let source = MKMapItem(placemark: MKPlacemark(coordinate: loc1))
   source.name = "Your Location"
   let destination = MKMapItem(placemark: MKPlacemark(coordinate: loc2))
   destination.name = "Destination"
   MKMapItem.openMaps(with: [source, destination], launchOptions: [MKLaunchOptionsDirectionsModeKey: MKLaunchOptionsDirectionsModeDriving])
}

為了展示結果,我們在本教程的 ViewDidLoad 中呼叫此函式,但是你可以根據需要使用它。

在那之前,我們必須建立兩個位置。

override func viewDidLoad() {
   super.viewDidLoad()
   let coordinateOne = CLLocationCoordinate2D(latitude: CLLocationDegrees(exactly: 40.586746)!, longitude: CLLocationDegrees(exactly: -108.610891)!)
   let coordinateTwo = CLLocationCoordinate2D(latitude: CLLocationDegrees(exactly: 42.564874)!, longitude: CLLocationDegrees(exactly: -102.125547)!)
   self.getDirections(loc1: coordinateOne, loc2: coordinateTwo)
}

當我們在裝置上執行上述程式碼時,會給出以下輸出

更新於: 30-7-2019

832 次瀏覽

開啟你的 職業生涯

完成課程後獲取認證

開始學習
廣告
© . All rights reserved.