Maps đượ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 Maps dành cho iOS, 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à hình nhiều đường.
Giới thiệu
SDK bản đồ dành cho iOS cho phép bạn hiển thị bản đồ của Google trong ứng dụng iOS của mình. Những bản đồ này có giao diện giống như bản đồ bạn thấy trong ứng dụng iOS Google Maps và SDK hiển thị nhiều tính năng tương tự.
Ngoài chức năng ánh xạ, API này còn hỗ trợ nhiều loại 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 những người trả lờ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 khoá 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.
- Đang tải các lát bản đồ xuống.
- Đang hiện các ô trên màn hình thiết bị.
- Hiển thị các chế độ điều khiển như kéo và thu phóng.
- Phản hồi cử chỉ xoay 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ỉ dùng 2 ngón tay bằng cách nghiêng góc xem 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 mà lớp GMSMapView
hiển thị. GMSMapView
cho phép bạn thêm và xoá điểm đánh dấu, lớp phủ mặt đất và hình nhiều đường, thay đổi loại bản đồ hiển thị và kiểm soát nội dung 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 bạn muốn khung hiển thị hiển thị như thế nào với tất cả các trạng thái cho nó, còn hệ thống sẽ làm phần việc 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 chế độ xem tương thích với SwiftUI. Để thêm bản đồ trong SwiftUI, bạn phải tuân theo 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, 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 đồ xuất hiện khi bộ điều khiển chế độ xem này hiển thị, hãy nhớ tạo bản đồ trong phương thứcviewDidLoad
.Khi khởi chạy chế độ xem 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
,backgroundColor
hoặcscreen
.Đặt thuộc tính
camera
tuỳ chọn bản đồ bằng đối tượngGMSCameraPosition
. Thuộc tính này xác định mức trung tâm và mức thu phóng của bản đồ.Tạo và tạo thực thể cho một lớp
GMSMapView
bằng phương thứcGMSMapView
options:
. Nếu bản đồ này được sử dụng làm chế độ xem duy nhất của trình điều khiển chế độ xem, thì giá trị mặc định của tuỳ chọnframe
(CGRectZero
) của bản đồ có thể được dùng làm chế độ xemframe
— bản đồ sẽ tự động được đổi kích thước.Đặt đối tượng
GMSMapView
làm thành phần hiển thị của trình điều khiển chế độ xem. Ví dụ:self.view = mapView;
.
Ví dụ dưới đây sẽ thêm một bản đồ tại 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 cho đối tượng GMSMapView
.
Bước tiếp theo
Sau khi hoàn tất những bước này, bạn có thể định cấu hình chế độ cài đặt bản đồ.