Overlay bumi adalah overlay di peta yang terikat dengan koordinat lintang/bujur, sehingga akan bergerak saat Anda menarik atau melakukan zoom pada peta.

Pengantar
Overlay bumi adalah gambar yang disematkan pada peta. Tidak seperti penanda, overlay bumi berorientasi pada permukaan Bumi bukan layar, sehingga memutar, memiringkan, atau melakukan zoom pada peta akan mengubah orientasi gambar.
Untuk menambahkan overlay bumi, buat
GMSGroundOverlay
objek yang menentukan ikon dan batas. Jika Anda tidak menentukan salah satunya, overlay bumi tidak akan muncul di peta. Anda dapat secara opsional menentukan setelan tambahan yang akan memengaruhi posisi gambar di peta.
Setelah menentukan opsi yang diperlukan, tetapkan properti map objek ini untuk menambahkan overlay.
Menambahkan overlay
- Membuat instance objek
GMSGroundOverlaybaru - Tetapkan properti
iconke instanceUIImage. - Tetapkan properti
boundske instanceGMSCoordinateBounds. Batas mewakili sudut barat daya dan timur laut gambar. - Tetapkan properti opsional, seperti
bearingdanzoomLevel, sesuai keinginan. - Tetapkan properti
map- gambar akan muncul di peta.
Contoh di bawah menunjukkan cara menambahkan overlay bumi ke objek GMSMapView yang ada.
Swift
let southWest = CLLocationCoordinate2D(latitude: 40.712216, longitude: -74.22655) let northEast = CLLocationCoordinate2D(latitude: 40.773941, longitude: -74.12544) let overlayBounds = GMSCoordinateBounds(coordinate: southWest, coordinate: northEast) // Image from http://www.lib.utexas.edu/maps/historical/newark_nj_1922.jpg let icon = UIImage(named: "newark_nj_1922") let overlay = GMSGroundOverlay(bounds: overlayBounds, icon: icon) overlay.bearing = 0 overlay.map = mapView
Objective-C
CLLocationCoordinate2D southWest = CLLocationCoordinate2DMake(40.712216,-74.22655); CLLocationCoordinate2D northEast = CLLocationCoordinate2DMake(40.773941,-74.12544); GMSCoordinateBounds *overlayBounds = [[GMSCoordinateBounds alloc] initWithCoordinate:southWest coordinate:northEast]; // Image from http://www.lib.utexas.edu/maps/historical/newark_nj_1922.jpg UIImage *icon = [UIImage imageNamed:@"newark_nj_1922"]; GMSGroundOverlay *overlay = [GMSGroundOverlay groundOverlayWithBounds:overlayBounds icon:icon]; overlay.bearing = 0; overlay.map = mapView;
Menghapus overlay
Anda dapat menghapus overlay bumi dari peta dengan menetapkan properti map GMSGroundOverlay ke nil. Atau, Anda dapat menghapus semua overlay (termasuk overlay bumi yang saat ini ada di peta dengan memanggil metode clear GMSMapView.
Swift
mapView.clear()
Objective-C
[mapView clear];
Jika ingin melakukan perubahan pada overlay bumi setelah menambahkannya ke peta, pastikan Anda tetap mempertahankan objek GMSGroundOverlay. Anda dapat mengubah overlay bumi nanti dengan melakukan perubahan pada objek ini.
Swift
let overlay = GMSGroundOverlay(bounds: overlayBounds, icon: icon) overlay.bearing = 0 overlay.map = mapView // ... overlay.isTappable = true
Objective-C
GMSGroundOverlay *overlay = [GMSGroundOverlay groundOverlayWithBounds:overlayBounds icon:icon]; overlay.bearing = 0; overlay.map = mapView; // ... overlay.tappable = YES;
Acara
Anda dapat memproses peristiwa yang terjadi di peta, seperti saat pengguna mengetuk overlay. Untuk memproses peristiwa, Anda harus menerapkan protokol
GMSMapViewDelegate. Lihat
panduan untuk peristiwa dan daftar metode di
GMSMapViewDelegate.