Mapy są reprezentowane w interfejsie API przez klasę GMSMapView
,
podklasa UIView
. Mapa jest najważniejszym obiektem na
Maps SDK na iOS oraz niezbędne metody dodawania i usuwania
oraz zarządzanie innymi obiektami, takimi jak znaczniki i linie łamane.
Wprowadzenie
Maps SDK na iOS pozwala wyświetlać mapę Google aplikacji na iOS. Te mapy mają taki sam wygląd jak mapy, które widzisz Mapy Google Aplikacja na iOS oraz pakiet SDK zapewniają wiele tych samych funkcji.
Oprócz funkcji mapowania interfejs API obsługuje również szereg które są zgodne z modelem interfejsu iOS. Możesz na przykład ustawić interakcje z mapą przez definiowanie użytkowników, którzy reagują na gesty użytkowników, np. dwukrotne kliknięcie.
Klasa klucza podczas pracy z obiektem Map to klasa GMSMapView
.
GMSMapView
automatycznie obsługuje te operacje:
- Łączę z usługą Mapy Google.
- Pobieram fragmenty mapy.
- Wyświetlam kafelki na ekranie urządzenia.
- Wyświetlanie różnych elementów sterujących, takich jak przesuwanie i powiększanie.
- Reagowanie na gesty przesuwania i powiększania przez przesuwanie mapy oraz powiększanie i pomniejszanie.
- Reagowanie na gesty dwoma palcami przez przechylanie mapy.
Oprócz tych automatycznych operacji możesz kontrolować działanie
przy użyciu właściwości i metod udostępnianych przez
GMSMapView
zajęcia. GMSMapView
umożliwia dodawanie i usuwanie znaczników, terenu
nakładek i linii łamanych, zmienić typ wyświetlanej mapy
co widać na mapie w GMSCameraPosition
zajęcia.
Twórz mapy za pomocą SwiftUI
SwiftUI oferuje dodatkowy sposób tworzenia UI przy użyciu podejścia deklaratywnego. Ty określ w SwiftUI, jak ma wyglądać widok i różne stany. a system zajmie się resztą. SwiftUI obsługuje aktualizowanie widoku za każdym razem, określony stan zmienia się w wyniku zdarzenia lub działania użytkownika.
Maps SDK na iOS jest oparty na platformie UIKit
i nie zapewnia
Widok zgodny z SwiftUI. Dodawanie map w SwiftUI wymaga spełnienia
UIViewRepresentable
lub UIViewControllerRepresentable
. Aby dowiedzieć się więcej, przeczytaj
Ćwiczenia z programowania dodawanie mapy do aplikacji na iOS za pomocą
SwiftUI.
Dodawanie mapy
Podstawowe kroki, które należy wykonać, aby dodać mapę:
Aby pobrać pakiet SDK, uzyskaj klucz interfejsu API i dodaj wymagane platformy, wykonaj kroki w dalszej części tego procesu:
W
AppDelegate
podaj klucz interfejsu APIprovideAPIKey:
. naGMSServices
.Utwórz lub zaktualizuj
ViewController
. Jeśli mapa jest wyświetlana, gdy kontroler widoku danych stanie się widoczny, pamiętaj, aby utworzyć go w MetodaviewDidLoad
.Podczas inicjowania widoku mapy ustaw opcje konfiguracji za pomocą
GMSMapViewOptions
Właściwości:frame
,camera
,mapID
,backgroundColor
lubscreen
.Ustaw właściwość
camera
opcji mapy za pomocą parametruGMSCameraPosition
obiekt. Określa centralny poziom i poziom powiększenia mapę.Utwórz i utwórz instancję klasy
GMSMapView
za pomocą interfejsuGMSMapView
Metodaoptions:
. Jeśli ta mapa ma być używana jako tylko wyświetlanie, domyślna wartośćCGRectZero
opcji mapyframe
może być używana jako widokframe
— rozmiar mapy jest automatycznie zmieniany.Ustaw obiekt
GMSMapView
jako widok kontrolera widoku. Przykład:self.view = mapView;
W poniższym przykładzie dodaje się do aplikacji mapę wyśrodkowaną na centrum Singapuru.
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; }
Po wykonaniu tych czynności możesz dodatkowo skonfigurować GMSMapView
obiektu.
Co dalej?
Po wykonaniu tych czynności możesz skonfigurować mapę ustawieniach.