我必须解决问题。 我在服务器上存储了很多坐标,它们代表了一个课程,我必须在地图上绘制课程,必须支持iOS6和iOS7
所以,应该能够画出像这样的东西
任何人都可以帮我解决方案或想法,以便更好地实现这一目标吗?
答案 0 :(得分:7)
你可以这样做:
- (void)viewDidLoad {
[super viewDidLoad];
// center map
CLLocationCoordinate2D startCoord = CLLocationCoordinate2DMake(47.081012, 2.398781);
MKCoordinateRegion adjustedRegion = [self.mapView regionThatFits:MKCoordinateRegionMakeWithDistance(startCoord, 3000000, 3000000)];
[self.mapView setRegion:adjustedRegion animated:YES];
[self showLines];
}
- (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
}
- (void)showLines {
CLLocationCoordinate2D *pointsCoordinate = (CLLocationCoordinate2D *)malloc(sizeof(CLLocationCoordinate2D) * 3);
pointsCoordinate[0] = CLLocationCoordinate2DMake(48.856614, 2.352221);
pointsCoordinate[1] = CLLocationCoordinate2DMake(45.764043, 4.835658);
pointsCoordinate[2] = CLLocationCoordinate2DMake(43.296482, 5.369779);
MKPolyline *polyline = [MKPolyline polylineWithCoordinates:pointsCoordinate count:3];
free(pointsCoordinate);
[self.mapView addOverlay:polyline];
}
- (MKPolylineRenderer *)mapView:(MKMapView *)mapView viewForOverlay:(id)overlay{
// create a polylineView using polyline overlay object
MKPolylineRenderer *polylineView = [[MKPolylineRenderer alloc] initWithPolyline:overlay];
// Custom polylineView
polylineView.strokeColor = [UIColor orangeColor];
polylineView.lineWidth = 2.0;
polylineView.alpha = 0.5;
return polylineView;
}
答案 1 :(得分:1)