2017-04-12 3 views
0

J'ai un itinéraire avec plusieurs points (plus de 2), comment puis-je ouvrir l'application Apple Maps et le montrer?Comment montrer l'itinéraire dans les cartes Apple avec plusieurs points dans iOS

Je sais qu'il est possible de montrer la route entre 2 points:

let mapItems = [MKMapItem(placemark: MKPlacemark(coordinate: coordinat1, addressDictionary: nil)), 
       MKMapItem(placemark: MKPlacemark(coordinate: coordinat2, addressDictionary: nil))] 
MKMapItem.openMaps(with: mapItems, launchOptions: [MKLaunchOptionsDirectionsModeKey : MKLaunchOptionsDirectionsModeDriving]) 

Mais il ne supporte que deux points. Je suis conscient aussi cela peut être réalisé en utilisant Google Maps en utilisant cette url:

https://www.google.com/maps/dir/<lat>,<lng>/<lat>,<lng>/.../.../ 

Mais je peux trouver une solution similaire pour Apple Carte

EDIT: Depuis que je peux montrer des cartes d'Apple comme celui-ci ainsi:

UIApplication.shared.openURL(URL(string: "http://maps.apple.com/?daddr=\(coordinate.latitude),\(coordinate.longitude)&dirflg=d")!) 

Peut-être qu'il existe un moyen de transmettre plus de coordonnées?

Répondre

1

Comme documentation indique MKMapItem:

Si vous spécifiez l'option MKLaunchOptionsDirectionsModeKey dans le dictionnaire, le tableau mapItems launchOptions ne doit pas avoir plus de deux éléments qu'il contient. Si le tableau contient un seul article, l'application Cartes génère des itinéraires depuis l'emplacement actuel de l'utilisateur jusqu'à l'emplacement spécifié par l'élément de carte. Si le tableau contient deux éléments, l'application Maps génère des indications à partir de l'emplacement du premier élément jusqu'à l'emplacement du deuxième élément de la matrice.

Donc la réponse est non.

+1

la réponse légèrement plus longue est peut-être. Si vous avez assez de points pour définir le chemin, alors vous pouvez afficher la route en superposition en utilisant MKPolyline et MKPolylineRenderer – Russell

+0

@MoinShirazi Je suppose que j'aurais dû ajouter non seulement l'exemple, mais également la documentation Apple, comme mon exemple était destiné à reconnaître Limitations de 'MKMapItem'. J'ai ajouté une modification. - @Russell, oui je pourrais, mais vous voyez, j'ai besoin d'une navigation pas-à-pas, donc dessiner mon itinéraire est hors de question. – Xernox