我正在使用新的MKMapItem,一切似乎都很好。当我使用带有该选项的"openMapsWithItems"时,我会打开地图应用程序,其中包含从"plc"到"plc3"的路线,但我想使用所有 3 个地标,如开始 -> 点 ->目的地。这可能吗?
NSMutableArray *arrayMapItem = [[NSMutableArray alloc] init];
MKPlacemark *plc = [[MKPlacemark alloc] initWithCoordinate:CLLocationCoordinate2DMake(43.77398, 11.248) addressDictionary:nil];
MKMapItem *partenza = [[MKMapItem alloc] initWithPlacemark:plc];
[partenza setName:@"Piazza"];
MKPlacemark *plc2 = [[MKPlacemark alloc] initWithCoordinate:CLLocationCoordinate2DMake(43.780, 11.248) addressDictionary:nil];
MKMapItem *mezzo = [[MKMapItem alloc] initWithPlacemark:plc2];
[mezzo setName:@"Mezzo"];
MKPlacemark *plc3 = [[MKPlacemark alloc] initWithCoordinate:CLLocationCoordinate2DMake(43.783, 11.248) addressDictionary:nil];
MKMapItem *destinazione = [[MKMapItem alloc] initWithPlacemark:plc3];
[destinazione setName:@"Destinazione"];
[arrayMapItem addObject:partenza];
[arrayMapItem addObject:mezzo];
[arrayMapItem addObject:destinazione];
NSDictionary* options = [[NSDictionary alloc] initWithObjectsAndKeys:
MKLaunchOptionsDirectionsModeDriving,
MKLaunchOptionsDirectionsModeKey, nil];
[MKMapItem openMapsWithItems:arrayMapItem launchOptions:options];
从 MapKit 文档中,它指出:
如果在启动选项字典中指定 MKLaunchOptionsDirectionsModeKey 选项,则 mapItems 数组中必须包含不超过两个项目。如果数组包含一个项目,则"地图"应用会生成从用户当前位置到地图项目指定位置的方向。如果数组包含两个项目,"地图"应用将生成从数组中第一项的位置到第二项位置的方向。
如果使用 MKLaunchOptionsDirectionsModeKey
选项,则只应在数组中传递两个项目。