1
KML 파일의 데이터를 MKMapView로로드하려고합니다. 배열로 데이터를 구문 분석 할 수 있었고 이제는 각 항목의지도에 주석을 작성하려고합니다. 아래의 코드를 사용하여KML 파일의 주석을 MKMapView에 추가
이, 내가지도에 주석을 만들 수 있었지만 위치가 정확하지 :
Parser *parser = [[Parser alloc] initWithContentsOfURL:url];
parser.rowName = @"Placemark";
parser.elementNames = @[@"name", @"address", @"coordinates", @"description"];
[parser parse];
//parseItem is an array returned with all data after items are parsed.
for (NSDictionary *locationDetails in parser.parseItems) {
MKPointAnnotation *annotation = [[MKPointAnnotation alloc] init];
annotation.title = locationDetails[@"name"];
NSArray *coordinates = [locationDetails[@"coordinates"] componentsSeparatedByString:@","];
annotation.coordinate = CLLocationCoordinate2DMake([coordinates[0] floatValue], [coordinates[1] floatValue]);
[self.mapView addAnnotation:annotation];
}
'annotation.title = ...'줄 다음에는이 NSLog를 추가하고 그 내용을 확인하십시오 :'NSLog (@ "coords = % @", locationDetails [@ "좌표"]), ' – Anna
좌표 : 구문 분석 데이터에서 즉 : coords = -73.9630010000000140.682846,0 – jumpr3
위도, 위도 순서로오고 있지만 CLLocationCoordinate2DMake 함수를 위도, 경도 소요 좌표가 보인다. 'CLLocationCoordinate2DMake ([좌표 [1] doubleValue], [좌표 [0] doubleValue])'를 시도하십시오. (더 정확한 배치를 위해 float를 double로 변경하십시오.) – Anna