Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> IOS

จะวาดเส้นทางระหว่างสองสถานที่โดยใช้ MapKit ใน Swift ได้อย่างไร


ในการวาดเส้นทางระหว่างสถานที่สองแห่งบนแผนที่ เราจำเป็นต้องมีพิกัดของสถานที่ทั้งสองแห่ง

เมื่อเราได้พิกัดของทั้งสองตำแหน่งแล้ว เราก็สามารถใช้ฟังก์ชันที่ให้ไว้ด้านล่างเพื่อแสดงเส้นแบ่งระหว่างจุดสองจุดบนแผนที่ ในตัวอย่างนี้ ฉันจะใช้ตำแหน่งสุ่มสองตำแหน่งเป็นสองจุด

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)
}

เมื่อเรารันโค้ดด้านบนบนอุปกรณ์ จะได้ผลลัพธ์ดังต่อไปนี้

จะวาดเส้นทางระหว่างสองสถานที่โดยใช้ MapKit ใน Swift ได้อย่างไร