Trang này cho bạn biết cách hiển thị dữ liệu địa lý ở định dạng KML, bằng cách sử dụng GMUKMLParser
kết hợp với GMUGeometryRenderer
. KML là một định dạng phổ biến để hiển thị dữ liệu địa lý, chẳng hạn như điểm, đường kẻ và đa giác.
Ảnh chụp màn hình sau đây cho thấy một số dữ liệu KML mẫu được hiển thị trên bản đồ:
Điều kiện tiên quyết và lưu ý
GMUKMLParser
là một phần của SDK Maps dành cho Thư viện tiện ích iOS. Nếu bạn chưa thiết lập thư viện, hãy làm theo hướng dẫn thiết lập trước khi đọc phần còn lại của trang này.
Để xem mã mẫu đầy đủ, hãy xem các ứng dụng mẫu trên GitHub.
Hiển thị dữ liệu KML
Để hiển thị dữ liệu KML trên bản đồ, hãy tạo GMUKMLParser
có đường dẫn đến tài nguyên KML (KML_Sample.kml
trong ví dụ này). Sau đó, hãy tạo GMUGeometryRenderer
truyền thực thể GMUKMLParser
. Cuối cùng, hãy gọi GMUGeometryRenderer.render()
. Mã ví dụ sau đây cho thấy việc hiển thị dữ liệu KML trên bản đồ:
Swift
import GoogleMapsUtils class KML: NSObject { private var mapView: GMSMapView! func renderKml() { guard let path = Bundle.main.path(forResource: "KML_Sample", ofType: "kml") else { print("Invalid path") return } let url = URL(fileURLWithPath: path) let kmlParser = GMUKMLParser(url: url) kmlParser.parse() let renderer = GMUGeometryRenderer( map: mapView, geometries: kmlParser.placemarks, styles: kmlParser.styles ) renderer.render() } }
Objective-C
@import GoogleMapsUtils; @implementation KML { GMSMapView *_mapView; } - (void)renderKml { NSString *path = [[NSBundle mainBundle] pathForResource:@"KML_Sample" ofType:@"kml"]; NSURL *url = [NSURL fileURLWithPath:path]; GMUKMLParser *parser = [[GMUKMLParser alloc] initWithURL:url]; [parser parse]; GMUGeometryRenderer *renderer = [[GMUGeometryRenderer alloc] initWithMap:_mapView geometries:parser.placemarks styles:parser.styles]; [renderer render]; } @end