Bản đồ được biểu thị trong API bằng lớp GMSMapView, một lớp con của UIView. Bản đồ là đối tượng quan trọng nhất trong SDK Bản đồ dành cho iOS và cung cấp các phương thức cần thiết để thêm, xoá và quản lý các đối tượng khác như điểm đánh dấu và đường nhiều đoạn.
Giới thiệu
SDK Bản đồ dành cho iOS cho phép bạn hiển thị bản đồ Google trong ứng dụng iOS. Các bản đồ này có cùng giao diện như bản đồ mà bạn thấy trong ứng dụng Google Maps dành cho iOS và SDK này cung cấp nhiều tính năng tương tự.
Ngoài chức năng lập bản đồ, API này còn hỗ trợ một loạt các hoạt động tương tác phù hợp với mô hình giao diện người dùng iOS. Ví dụ: bạn có thể thiết lập các hoạt động tương tác với bản đồ bằng cách xác định các trình phản hồi phản ứng với cử chỉ của người dùng, chẳng hạn như nhấn và nhấn đúp.
Lớp chính khi làm việc với đối tượng ánh xạ là lớp GMSMapView.
GMSMapView tự động xử lý các thao tác sau:
- Kết nối với dịch vụ Google Maps.
- Tải ô bản đồ xuống.
- Hiển thị ô trên màn hình thiết bị.
- Hiển thị nhiều nút điều khiển như kéo và thu phóng.
- Phản hồi các cử chỉ kéo và thu phóng bằng cách di chuyển bản đồ và phóng to hoặc thu nhỏ.
- Phản hồi các cử chỉ bằng hai ngón tay bằng cách nghiêng góc nhìn của bản đồ.
Ngoài các thao tác tự động này, bạn có thể kiểm soát hành vi và giao diện của bản đồ thông qua các thuộc tính và phương thức do lớp GMSMapView cung cấp. Sử dụng GMSMapView để thêm và xoá điểm đánh dấu, lớp phủ mặt đất và đường nhiều đoạn, thay đổi loại bản đồ được hiển thị và kiểm soát những gì được hiển thị trên bản đồ thông qua lớp GMSCameraPosition.
Xây dựng bản đồ bằng SwiftUI
SwiftUI cung cấp một cách khác để tạo giao diện người dùng bằng phương pháp khai báo. Bạn cho SwiftUI biết giao diện mà bạn muốn cùng với tất cả các trạng thái khác nhau của giao diện đó và hệ thống sẽ thực hiện phần còn lại. SwiftUI xử lý việc cập nhật khung hiển thị bất cứ khi nào trạng thái cơ bản thay đổi do một sự kiện hoặc hành động của người dùng.
SDK Bản đồ dành cho iOS được xây dựng dựa trên UIKit và không cung cấp khung hiển thị tương thích với SwiftUI. Việc thêm bản đồ trong SwiftUI yêu cầu tuân thủ UIViewRepresentable hoặc UIViewControllerRepresentable. Để tìm hiểu thêm, hãy xem
lớp học lập trình Thêm bản đồ vào ứng dụng iOS bằng
SwiftUI.
Thêm bản đồ
Các bước cơ bản để thêm bản đồ là:
Để tải SDK xuống, lấy khoá API và thêm các khung bắt buộc, hãy làm theo các bước trong:
Trong
AppDelegate, hãy cung cấp khoá API cho phương thức lớpprovideAPIKey:trênGMSServices.Tạo hoặc cập nhật
ViewController. Nếu bản đồ được hiển thị khi bộ điều khiển khung hiển thị này trở nên hiển thị, hãy nhớ tạo bản đồ trong phương thứcviewDidLoad.Khi khởi chạy khung hiển thị bản đồ, hãy đặt các tuỳ chọn cấu hình bằng
GMSMapViewOptions. Các thuộc tính bao gồmframe,camera,mapID,backgroundColorhoặcscreen.Đặt thuộc tính
cameracủa tuỳ chọn bản đồ bằng đối tượngGMSCameraPosition. Thuộc tính này chỉ định tâm và mức thu phóng của bản đồ.Tạo và khởi chạy lớp
GMSMapViewbằng phương thứcGMSMapViewoptions:. Nếu bản đồ này được dùng làm khung hiển thị duy nhất của bộ điều khiển khung hiển thị, thì bạn có thể dùng giá trị mặc địnhframecủa tuỳ chọn bản đồ làCGRectZerolàmframecủa khung hiển thị – bản đồ sẽ tự động đổi kích thước.Đặt đối tượng
GMSMapViewlàm khung hiển thị của bộ điều khiển khung hiển thị. Ví dụ:self.view = mapView;.
Ví dụ bên dưới thêm một bản đồ, tập trung vào trung tâm thành phố Singapore, vào một ứng dụng.
Swift
import GoogleMaps class MapObjects : UIViewController { override func viewDidLoad() { super.viewDidLoad() let options = GMSMapViewOptions() options.camera = GMSCameraPosition(latitude: 1.285, longitude: 103.848, zoom: 12) options.frame = self.view.bounds; let mapView = GMSMapView(options:options) self.view = mapView } }
Objective-C
- (void)viewDidLoad { [super viewDidLoad]; GMSMapViewOptions *options = [[GMSMapViewOptions alloc] init]; options.camera = [GMSCameraPosition cameraWithLatitude:1.285 longitude:103.848 zoom:12]; options.frame = self.view.bounds; GMSMapView *mapView = [[GMSMapView alloc] initWithOptions:options]; self.view = mapView; }
Sau khi làm theo các bước này, bạn có thể định cấu hình thêm đối tượng GMSMapView.
Bước tiếp theo
Sau khi hoàn tất các bước này, bạn có thể định cấu hình chế độ cài đặt bản đồ.