在iOS中使用多个点绘制路线
我试图在提供的“地图”应用程序中显示具有多个点的路线 我已经知道了如何显示两点之间的路线。我正在建立一个多点列表,如下所示 据我所知,打开maps.google.com(在iOS中)将打开地图应用程序(如果地图不可用,则打开Safari) 结果是“地图”应用程序仍然只显示起点和终点之间的路线。不显示添加了在iOS中使用多个点绘制路线,ios,mapkit,Ios,Mapkit,我试图在提供的“地图”应用程序中显示具有多个点的路线 我已经知道了如何显示两点之间的路线。我正在建立一个多点列表,如下所示 据我所知,打开maps.google.com(在iOS中)将打开地图应用程序(如果地图不可用,则打开Safari) 结果是“地图”应用程序仍然只显示起点和终点之间的路线。不显示添加了mrad参数的点 是否可以在iOS中显示包含多个目的地的路线(无需构建自己的地图系统)?对于您的问题,答案是肯定的 但我不会再努力让自己看起来聪明了。你看错了,所以提问和回答。您需要的是一个两步
mrad
参数的点
是否可以在iOS中显示包含多个目的地的路线(无需构建自己的地图系统)?对于您的问题,答案是肯定的 但我不会再努力让自己看起来聪明了。你看错了,所以提问和回答。您需要的是一个两步流程:
- 使用GMaps方向API获取航路点列表等
- 用这些点画一条线李>
我建议您看看。刚刚编写了一个小示例,使用Google maps api V3在iOS 6上显示方向+
以下是通过多个位置获取连接路线的简单易用代码。 要完成项目,请继续-
NSArray*字典=@[
@{
@"来源":@"28.6287",
@"资料来源:@"77.3208",,
@“目的地”:“28.628454”,
@“目的地”:“77.376945”,
@“S_地址”:“德里瓦伊沙利”,
},
@{
@"来源":@"28.628454",
@"资料来源:@"77.376945",,
@“目的地”:“28.5529”,
@“目的地”:“77.3367”,
@“S_地址”:“诺伊达第63节”,
},
@{
@"来源":@"28.5529",
@"来源":@"77.3367",
@“目的地”:“28.6276”,
@“目的地”:“77.2784”,
@“S_地址”:“诺伊达第44节”,
},
@{
@"来源":@"28.6276",
@"资料来源:@"77.2784",,
@“目的地”:“28.6287”,
@“目的地”:“77.3208”,
@“S_地址”:“新德里拉斯米·纳加尔”,
},
];
对于(int i=0;我很确定在苹果地图上使用谷歌方向API是违反服务条款的。:(这是一个老问题,今天在iOS7上你有了MKDirections。简单而完美的问题。
NSArray *dictionary = @[
@{
@"Source_lat": @"28.6287",
@"Source_lon": @"77.3208",
@"Dest_lat": @"28.628454",
@"Dest_lon": @"77.376945",
@"S_address": @"Vaishali,Delhi",
},
@{
@"Source_lat": @"28.628454",
@"Source_lon": @"77.376945",
@"Dest_lat": @"28.5529",
@"Dest_lon": @"77.3367",
@"S_address": @"Noida Sec 63",
},
@{
@"Source_lat": @"28.5529",
@"Source_lon": @"77.3367",
@"Dest_lat": @"28.6276",
@"Dest_lon": @"77.2784",
@"S_address": @"Noida Sec 44",
},
@{
@"Source_lat": @"28.6276",
@"Source_lon": @"77.2784",
@"Dest_lat": @"28.6287",
@"Dest_lon": @"77.3208",
@"S_address": @"Laxmi Nagar,Delhi",
},
];
for (int i=0; i<dictionary.count; i++) {
NSDictionary*dict=[dictionary objectAtIndex:i];
NSString*S_lat=[dict valueForKey:@"Source_lat"];
NSString*S_lon=[dict valueForKey:@"Source_lon"];
NSString*D_lat=[dict valueForKey:@"Dest_lat"];
NSString*D_lon=[dict valueForKey:@"Dest_lon"];
NSString*address=[dict valueForKey:@"S_address"];
NSString* apiUrlStr =[NSString stringWithFormat:@"http://maps.googleapis.com/maps/api/directions/json?origin=%@,%@&destination=%@,%@&sensor=false",S_lat,S_lon, D_lat, D_lon
];
NSData *data =[NSData dataWithContentsOfURL:[NSURL URLWithString:apiUrlStr]];
[self performSelectorOnMainThread:@selector(fetchedData:) withObject:data waitUntilDone:YES];
CLLocationCoordinate2D coord;
coord.latitude=[S_lat floatValue];
coord.longitude=[ S_lon floatValue];
MKCoordinateRegion region1;
region1.center=coord;
region1.span.longitudeDelta=0.2 ;
region1.span.latitudeDelta=0.2;
[theMapView setRegion:region1 animated:YES];
MKPointAnnotation *sourceAnnotation = [[MKPointAnnotation alloc]init];
sourceAnnotation.coordinate=coord;
sourceAnnotation.title=address;
[theMapView addAnnotation:sourceAnnotation];
}