Za pomocą pakietu Maps SDK na iOS możesz zmienić widok mapy przez użytkownika, zmieniając aparat mapy.
Dzięki pakietowi SDK Maps na iOS użytkownicy mogą przechylać i obracać mapy, aby dostosowywać je do orientacji. Użytkownicy mogą przesuwać mapę i zmieniać perspektywę przy każdym powiększeniu, nie tracąc czasu oczekiwania.
Zmiany w kamerze nie mają wpływu na znaczniki, linie łamane ani inne dodane elementy graficzne, chociaż możesz je dostosować, aby lepiej pasowały do nowego widoku.
Widok mapy
Pakiet SDK Map Google na iOS wykorzystuje odwzorowanie metryczne do reprezentowania powierzchni świata (sfery) na ekranie urządzenia (płaskiej płaszczyzny).
Pozycja kamery
Widok mapy jest modelowany jako aparat patrzący na płaską płaszczyznę. Położenie kamery (a tym samym wyświetlanie mapy) jest określane przez te właściwości: cel (szerokość/długość geograficzna), nachylenie, przechylenie i powiększenie.
Kierowanie (lokalizacja)
Cel kamery to położenie pośrodku mapy, określane za pomocą współrzędnych szerokości i długości geograficznej.
Szerokość geograficzna może wynosić od -85 do 85 stopni włącznie. Wartości powyżej lub poniżej tego zakresu będą ograniczane do najbliższej wartości z tego zakresu. Na przykład określenie szerokości geograficznej równą 100 spowoduje ustawienie wartości na 85. Długość geograficzna z zakresu od -180 do 180 stopni włącznie. Wartości powyżej lub poniżej tego zakresu będą zawijane, aby mieściły się w przedziale (-180, 180). Na przykład filmy 480, 840 i 1200 zostaną zawijane do 120 stopni.Orientacja kierunkowa
Orientacja kamery określa kierunek kompasu mierzony w stopniach od północy rzeczywistej, odpowiadający górnej krawędzi mapy. Jeśli rysujesz pionową linię od środka mapy do górnej krawędzi mapy, kierunek geograficzny będzie odpowiadać kierunekowi (mierzonemu w stopniach) względem prawdziwej północy.
Wartość 0 oznacza, że górna część mapy wskazuje prawdziwą północ. Wartość odchylenia 90 oznacza górną część mapy w kierunku wschodnim (90 stopni na kompasie). Wartość 180 oznacza, że górna część mapy jest skierowana na południe.
Interfejs API Map Google umożliwia zmianę kierunku mapy. Na przykład gdy samochód często obraca mapę drogową, aby dopasować ją do kierunku jazdy, a turyści korzystający z mapy i kompasu zwykle ustalają kierunek mapy tak, aby pionowa linia była skierowana na północ.
Pochylenie (kąt patrzenia)
Nachylenie określa pozycję kamery na łuku bezpośrednio nad położeniem środkowym mapy, mierzonym w stopniach od nadiru (kierunku wskazującego bezpośrednio pod kamerą). Wartość 0 odpowiada ustawieniu kamery skierowanej prosto do dołu. Wartości większe niż 0 odpowiadają aparatowi wysuniętemu w kierunku horyzontu o określoną liczbę stopni. Po zmianie kąta patrzenia mapa jest wyświetlana jako perspektywa, przy czym odległe obiekty są mniejsze, a obiekty znajdujące się w pobliżu są większe. Poniższe ilustracje to ilustrują.
Kąt widzenia na poniższych obrazach wynosi 0 stopni. Pierwsze zdjęcie przedstawia schemat. Pozycja 1 to pozycja kamery, a pozycja 2 – bieżąca pozycja na mapie. Wynikowa mapa jest wyświetlana pod nią.
Kąt patrzenia na poniższych obrazach wynosi 45 stopni. Zwróć uwagę, że kamera porusza się w połowie łuku między pionem (0 stopni) a podłożem (90 stopni) do pozycji 3. Kamera nadal jest skierowana w punkt centralny mapy, ale obszar przedstawiany przez linię w pozycji 4 jest teraz widoczny.
Mapa na tym zrzucie ekranu jest nadal wyśrodkowana w tym samym punkcie co oryginalna mapa, ale u góry mapy pojawiły się inne obiekty. Po zwiększeniu kąta o ponad 45 stopni obiekty znajdujące się między kamerą a widokiem na mapie będą proporcjonalnie większe, a obiekty poza zasięgiem mapy będą proporcjonalnie mniejsze, dając efekt trójwymiarowy.
Zoom
Poziom powiększenia kamery określa skalę mapy. Przy większym powiększeniu na ekranie widać więcej szczegółów, a przy mniejszych poziomach powiększenia więcej świata jest widoczne na ekranie. Przy powiększeniu 0 skala mapy jest tak, że cały świat ma szerokość około 256 punktów.
Zwiększenie poziomu powiększenia o 1 powoduje podwojenie szerokości świata na ekranie. Dlatego przy powiększeniu N szerokość świata wynosi około 256 × 2N punktów. Na przykład przy powiększeniu 2 cały świat ma około 1024 punktów szerokości.
Poziom powiększenia nie musi być liczbą całkowitą. Zakres powiększenia dozwolony przez mapę zależy od wielu czynników, m.in. celu, typu mapy i rozmiaru ekranu. Każda liczba spoza zakresu zostanie przekonwertowana na następną prawidłową wartość, którą może być minimalny lub maksymalny poziom powiększenia. Poniższa lista pokazuje przybliżony poziom szczegółowości na każdym poziomie powiększenia:
- 1: świat
- 5: ląd/kontynent
- 10: Miasto
- 15: Ulice
- 20. Budynki
Ustaw początkową pozycję kamery
Ustaw początkową pozycję kamery za pomocą obiektu GMSCameraPosition
, który umożliwia ustawienie szerokości i długości geograficznej celu oraz ustawienia kierunku, przechylania i powiększenia.
Aby ustawić początkową pozycję kamery, utwórz obiekt GMSMapViewOptions
i ustaw właściwość camera
na GMSCameraPosition
. Następnie przekaż opcje do konstruktora wygodnego GMSMapView
.
Swift
let options = GMSMapViewOptions() options.camera = GMSCameraPosition.camera(withLatitude: -33.8683, longitude: 151.2086, zoom: 16) let mapView = GMSMapView(options:options)
Objective-C
GMSMapViewOptions *options = [[GMSMapViewOptions alloc] init]; options.camera = [GMSCameraPosition cameraWithLatitude:-33.8683 longitude:151.2086 zoom:16]; GMSMapView *mapView = [[GMSMapView alloc] initWithOptions:options];
Obiekt GMSMapView
możesz też utworzyć za pomocą domyślnej metody init UIView
. W takim przypadku położenie kamery zaczyna się w lokalizacji domyślnej i możesz ją zmienić po utworzeniu.
Swift
let options = GMSMapViewOptions() options.frame = self.view.bounds let mapView = GMSMapView(options:options)
Objective-C
GMSMapViewOptions *options = [[GMSMapViewOptions alloc] init]; options.frame = self.view.bounds; GMSMapView *mapView = [[GMSMapView alloc] initWithOptions:options];
Zmień pozycję kamery
Możesz automatycznie zmienić pozycję kamery, aby określić lokalizację, położenie, przechylanie i powiększenie. Chociaż GMSMapView
udostępnia kilka metod zmiany pozycji kamery, zwykle używasz GMSCameraPosition
lub GMSCameraUpdate
:
GMSCameraPosition
zawiera właściwości i metody umożliwiające zmianę każdego parametru pozycji kamery: celu, kierunku, przechylenia i powiększenia.GMSCameraUpdate
pozwala zmieniać cel, kierunek, przechylanie i powiększanie, a także dodatkowe, wygodne metody umożliwiające przewijanie, zaawansowane powiększanie, wyśrodkowanie kamery w zdefiniowanych granicach i nie tylko.
Gdy poruszasz kamerą, możesz ją „przypiąć” do nowej pozycji, czyli nie ma animacji. Możesz też uruchomić animację jego ruchu. Jeśli np. animujesz zmianę lokalizacji docelowej kamery, animacja zostanie przesunięta z poprzedniej lokalizacji do nowej.
Animacja interpoluje się między bieżącymi atrybutami kamery a nowymi. Czas trwania animacji możesz kontrolować za pomocą funkcji Główna animacja.
Użyj formatu: GMSCameraPosition
Aby zmienić kamerę za pomocą GMSCameraPosition
, utwórz nowy obiekt lub skopiuj istniejący, a następnie ustaw go w obiekcie GMSMapView
. Obiekt GMSCameraPosition
pozwala przyciągnąć kamerę do nowej lokalizacji z animacją lub bez niej.
Obiekt GMSCameraPosition
pozwala skonfigurować właściwości kamery, takie jak szerokość i długość geograficzna, powiększenie, kierunek i kąt patrzenia. Następnie możesz za pomocą tego obiektu ustawić właściwość camera
obiektu GMSMapView
.
Swift
let fancy = GMSCameraPosition( latitude: -33, longitude: 151, zoom: 6, bearing: 270, viewingAngle: 45 ) mapView.camera = fancy
Objective-C
GMSCameraPosition *fancy = [GMSCameraPosition cameraWithLatitude:-33.8683 longitude:151.2086 zoom:6 bearing:30 viewingAngle:45]; [mapView setCamera:fancy];
Pomiń właściwość GMSCameraPosition
, której wartość chcesz ustawić na wartość domyślną.
Aby animować przenoszenie, użyj metody animateToCameraPosition:
zamiast ustawiania właściwości camera
.
Użyj formatu: GMSCameraUpdate
GMSCameraUpdate
pozwala zmienić położenie kamery i wybrać, czy ma zostać przyciągana czy animowana. Zaletą GMSCameraUpdate
jest wygoda. Za pomocą GMSCameraPosition
możesz wykonywać te same zadania co GMSCameraUpdate
, ale GMSCameraUpdate
udostępnia dodatkowe metody pomocnicze, które ułatwiają manipulowanie kamerą.
Aby np. za pomocą funkcji GMSCameraPosition
zwiększać bieżący poziom powiększenia, musisz najpierw określić bieżący poziom powiększenia, a potem utworzyć obiekt GMSCameraPosition
, w którym ustawisz wartość powiększenia o 1.
Możesz też utworzyć obiekt GMSCameraUpdate
za pomocą metody zoomIn:
.
Następnie zaktualizuj kamerę, przekazując obiekt GMSCameraUpdate
do metody GMSMapView
animateWithCameraUpdate:
.
Swift
// Zoom in one zoom level let zoomCamera = GMSCameraUpdate.zoomIn() mapView.animate(with: zoomCamera)
Objective-C
// Zoom in one zoom level GMSCameraUpdate *zoomCamera = [GMSCameraUpdate zoomIn]; [mapView animateWithCameraUpdate:zoomCamera];
Aby przyciągnąć aparat do nowej pozycji, użyj metody GMSMapView
moveCamera:
.
W następnym przykładzie użyjesz funkcji GMSCameraUpdate
, aby animować ruch kamery i wyśrodkować go na Vancouver.
Swift
// Center the camera on Vancouver, Canada let vancouver = CLLocationCoordinate2D(latitude: 49.26, longitude: -123.11) let vancouverCam = GMSCameraUpdate.setTarget(vancouver) mapView.animate(with: vancouverCam)
Objective-C
// Center the camera on Vancouver, Canada CLLocationCoordinate2D vancouver = CLLocationCoordinate2DMake(49.26, -123.11); GMSCameraUpdate *vancouverCam = [GMSCameraUpdate setTarget:vancouver]; [mapView animateWithCameraUpdate:vancouverCam];
Utwórz obiekt GMSCameraUpdate
Utwórz obiekt GMSCameraUpdate
, korzystając z jednej z jego metod.
zoomIn:
izoomOut:
- Zmień bieżący poziom powiększenia o 1, 0 bez zmian.
zoomTo:
- Zmieni poziom powiększenia na podaną wartość, zachowując wszystkie pozostałe właściwości.
zoomBy:
- Zwiększa (lub zmniejsza, jeśli wartość jest ujemna) poziom powiększenia o podaną wartość.
zoomBy:atPoint:
- Zwiększa (lub zmniejsza, jeśli wartość jest ujemna) poziom powiększenia o podaną wartość, zachowując przy tym określoną pozycję punktu na ekranie.
setTarget:
- Zmienia szerokość i długość geograficzną kamery z zachowaniem wszystkich innych właściwości.
setTarget:zoom:
- Zmień szerokość i długość geograficzną kamery oraz powiększenie, zachowując wszystkie pozostałe właściwości.
setCamera:
- Ustawia nowy element
GMSCameraPosition
. scrollByX:Y:
- Zmienia szerokość i długość geograficzną kamery, aby przesunąć mapę o określoną liczbę punktów. Dodatnia wartość x powoduje, że kamera przesuwa się w prawo, dzięki czemu mapa wydaje się przesunąć w lewo. Dodatnia wartość y powoduje przesuwanie kamery w dół i przesuwanie mapy w górę. Przewijanie odbywa się względem bieżącego nachylenia kamery. Jeśli na przykład kamera jest ustawiona na 90 stopni, kierunek wschodni to „u góry”.
fitBounds:
- Przekształca aparat w taki sposób, aby wyśrodkował na ekranie określone progi przy największym możliwym poziomie powiększenia. Stosuje domyślne dopełnienie do granic 64 punktów.
fitBounds:withPadding:
- Przekształca aparat w taki sposób, aby wyśrodkował określony obszar na ekranie przy największym możliwym poziomie powiększenia. Użyj tej metody, aby określić to samo dopełnienie w punktach dla wszystkich boków ramki ograniczającej.
fitBounds:withEdgeInsets:
- Przekształca aparat w taki sposób, aby wyśrodkował określony obszar na ekranie przy największym możliwym poziomie powiększenia. W przypadku funkcji
UIEdgeInsets
dopełnienie dla każdej strony ramki ograniczającej możesz określić niezależnie.
Aby zmienić pojedynczą usługę, użyj GMSMapView
.
GMSMapView
udostępnia kilka metod, które pozwalają na poruszanie kamerą bez użycia obiektu GMSCameraPosition
lub GMSCameraUpdate
. Za pomocą tych metod, takich jak animateToLocation:
czy animateToZoom:
, możesz animować zmianę jednej właściwości kamery.
Możesz np. użyć metody toViewingAngle:
, aby animować zmianę przechylenia kamery.
Swift
mapView.animate(toViewingAngle: 45)
Objective-C
[mapView animateToViewingAngle:45];
Ustaw cel (lokalizacja)
Lokalizacja określa środek mapy. Lokalizacje określa się za pomocą szerokości i długości geograficznej oraz jest reprezentowane automatycznie przez atrybut CLLocationCoordinate2D
utworzony za pomocą funkcji CLLocationCoordinate2DMake
.
Użyj aplikacji GMSCameraPosition
, aby zmienić lokalizację. W tym przykładzie mapa przyciąga
się do nowej lokalizacji.
Swift
let target = CLLocationCoordinate2D(latitude: -33.868, longitude: 151.208) mapView.camera = GMSCameraPosition(target: target, zoom: 6)
Objective-C
CLLocationCoordinate2D target = CLLocationCoordinate2DMake(-33.868, 151.208); mapView.camera = [GMSCameraPosition cameraWithTarget:target zoom:6];
Aby animować zmianę i przesunąć mapę do nowej lokalizacji, zamiast ustawiać właściwość camera
, możesz użyć metody animateToCameraPosition:
. Możesz też użyć metody animateToLocation:
w GMSMapView
.
Swift
mapView.animate(toLocation: CLLocationCoordinate2D(latitude: -33.868, longitude: 151.208))
Objective-C
[mapView animateToLocation:CLLocationCoordinate2DMake(-33.868, 151.208)];
Możesz też utworzyć obiekt GMSCameraUpdate
, aby przesunąć kamerę. Użyj wbudowanej metody scrollByX:Y:
, aby określić liczbę punktów przewijania kamery w kierunkach X i Y. W tym przykładzie przewijasz kamerę o 200 punktów w prawo i o 100 punktów w dół:
Swift
// Move the camera 200 points to the right, and 100 points downwards let downwards = GMSCameraUpdate.scrollBy(x: 200, y: 100) mapView.animate(with: downwards)
Objective-C
// Move the camera 200 points to the right, and 100 points downwards GMSCameraUpdate *downwards = [GMSCameraUpdate scrollByX:200.0 Y:100.0]; [mapView animateWithCameraUpdate:downwards];
Ustaw kierunek (orientacja)
Orientacja kierunkowa to kierunek kompasu mierzony w stopniach od północy rzeczywistej na górnej krawędzi mapy. Na przykład kierunek 90 stopni prowadzi do mapy, na której górna krawędź wskazuje kierunek wschodni.
Ustaw kierunek kierowania programowo za pomocą właściwości GMSCameraPosition
lub GMSCameraUpdate
albo metody animateToBearing:
GMSMapView
.
Swift
mapView.animate(toBearing: 0)
Objective-C
[mapView animateToBearing:0];
Ustaw pochylenie (kąt patrzenia)
Kąt widzenia to pozycja kamery na łuku między centralnym punktem mapy a powierzchnią Ziemi, mierzonym w stopniach od nadiru (kierunku skierowanego bezpośrednio pod kamerę). Po zmianie kąta patrzenia mapa wyświetla się jako perspektywa, a obiekty znajdujące się między kamerą a jej położeniem są proporcjonalnie większe, a obiekty poza tym obszarem są proporcjonalnie mniejsze, dając efekt trójwymiarowy.
Kąt patrzenia może się mieścić w zakresie od 0 (kierunek pionowy na mapie) do wartości maksymalnej zależnej od poziomu powiększenia. Zoom na poziomie 16 lub wyższym to maksymalnie 65 stopni. Zoom na poziomie 10 lub niższym maksymalny kąt to 30 stopni.
Ustaw kąt widzenia automatycznie za pomocą funkcji GMSCameraPosition
lub GMSCameraUpdate
albo metody animateToViewingAngle:
GMSMapView
.
Swift
mapView.animate(toViewingAngle: 45)
Objective-C
[mapView animateToViewingAngle:45];
Ustaw powiększenie
Poziom powiększenia kamery określa skalę mapy. Przy większym powiększeniu zobaczysz więcej szczegółów na ekranie, a przy mniejszych powiększeniach zobaczysz więcej szczegółów.
Ustawiaj powiększenie automatycznie za pomocą funkcji GMSCameraPosition
lub GMSCameraUpdate
albo metody animateToZoom:
GMSMapView
.
Swift
mapView.animate(toZoom: 12)
Objective-C
[mapView animateToZoom:12];
W przykładzie poniżej użyto metody zoomIn:
do utworzenia obiektu GMSCameraUpdate
do animowania powiększenia o jeden poziom w stosunku do bieżącego poziomu.
Swift
// Zoom in one zoom level let zoomCamera = GMSCameraUpdate.zoomIn() mapView.animate(with: zoomCamera)
Objective-C
// Zoom in one zoom level GMSCameraUpdate *zoomCamera = [GMSCameraUpdate zoomIn]; [mapView animateWithCameraUpdate:zoomCamera];
Wyznaczanie granic
Aby przesunąć kamerę w taki sposób, aby przy największym możliwym powiększeniu widoczny był cały interesujący Cię obszar, ustaw granice widoku kamery. Jeśli na przykład chcesz wyświetlić wszystkie stacje benzynowe w promieniu pięciu kilometrów od bieżącej pozycji użytkownika, przesuń kamerę tak, by wszystkie stacje były widoczne na ekranie:
- Oblicz wartość elementu
GMSCoordinateBounds
, który ma być widoczny na ekranie. - Aby zwrócić nowy obiekt
GMSCameraPosition
, użyj metodycameraForBounds:insets:
GMSMapView
.
Ustawienie tych granic gwarantuje, że dany obiekt GMSCoordinateBounds
w pełni mieści się w obrębie bieżącej mapy. Pamiętaj, że ta metoda ustawia przechylenie i kierunek mapy na 0.
Poniższy przykład pokazuje, jak zmienić aparat, aby miasta Vancouver i Calgary wyświetlały się w tym samym widoku.
Swift
let vancouver = CLLocationCoordinate2D(latitude: 49.26, longitude: -123.11) let calgary = CLLocationCoordinate2D(latitude: 51.05,longitude: -114.05) let bounds = GMSCoordinateBounds(coordinate: vancouver, coordinate: calgary) let camera = mapView.camera(for: bounds, insets: UIEdgeInsets())! mapView.camera = camera
Objective-C
CLLocationCoordinate2D vancouver = CLLocationCoordinate2DMake(49.26, -123.11); CLLocationCoordinate2D calgary = CLLocationCoordinate2DMake(51.05, -114.05); GMSCoordinateBounds *bounds = [[GMSCoordinateBounds alloc] initWithCoordinate:vancouver coordinate:calgary]; GMSCameraPosition *camera = [mapView cameraForBounds:bounds insets:UIEdgeInsetsZero]; mapView.camera = camera;
Ogranicz przesuwanie do określonego obszaru
Te scenariusze określają granice mapy, ale użytkownik może ją przewinąć lub przesunąć poza te granice. Możesz natomiast ograniczyć granice środka współrzędnych mapy (cel kamery), aby użytkownicy mogli tylko przewijać i przesuwać widok w tych granicach.
Na przykład aplikacja dla sklepu centrum handlowego lub lotniska może ograniczyć mapę do określonych granic, umożliwiając użytkownikom przewijanie i przesuwanie mapy w tych granicach.
Aby ograniczyć przesuwanie do określonych granic, ustaw właściwość cameraTargetBounds
obiektu GMSMapView
na obiekt GMSCoordinateBounds
, który określa wymagane granice.
Aby później usunąć ograniczenie, ustaw cameraTargetBounds
na nil.
Swift
mapView.cameraTargetBounds = bounds
Objective-C
mapView.cameraTargetBounds = bounds;
Poniższy diagram przedstawia scenariusz, w którym cel kamery jest ograniczony do obszaru, który jest nieco większy od widocznego obszaru. Użytkownik może przewijać i przesuwać obraz, o ile cel kamery znajduje się w wyznaczonym obszarze. Krzyż symbolizuje cel kamery:
Mapa zawsze wypełnia widoczny obszar, nawet jeśli powoduje to wyświetlenie obszarów poza zdefiniowanymi granicami. Jeśli na przykład umieścisz cel kamery w rogu ograniczonego obszaru, obszar znajdujący się poza rogiem będzie widoczny w widocznym obszarze, ale użytkownicy nie będą mogli przewijać go w górę. Scenariusz ten ilustruje ten schemat. Krzyż symbolizuje cel kamery:
Na poniższym schemacie cel kamery ma bardzo ograniczone granice, przez co użytkownik ma bardzo mało możliwości przewijania lub przesuwania mapy. Krzyż symbolizuje cel kamery:
Ustawianie minimalnego lub maksymalnego powiększenia
Stałe globalne kGMSMinZoomLevel
i kGMSMaxZoomLevel
określają minimalne i maksymalne wartości powiększenia. Domyślnie właściwości minZoom
i maxZoom
obiektu GMSMapView
są ustawione na te stałe.
Aby ograniczyć zakres poziomów powiększenia dostępnych dla mapy, ustaw minimalny i maksymalny poziom powiększenia. Poniższy kod ogranicza poziom powiększenia do 10–15.
Swift
let camera = GMSCameraPosition( latitude: 41.887, longitude: -87.622, zoom: 12 ) let mapView = GMSMapView(frame: .zero, camera: camera) mapView.setMinZoom(10, maxZoom: 15)
Objective-C
GMSCameraPosition *camera = [GMSCameraPosition cameraWithLatitude:41.887 longitude:-87.622 zoom:12]; GMSMapView *mapView = [GMSMapView mapWithFrame:CGRectZero camera:camera]; [mapView setMinZoom:10 maxZoom:15];
Zakres powiększenia musisz ustawić za pomocą metody setMinZoom:maxZoom:
. Bieżące wartości możesz jednak odczytać, korzystając z właściwości minZoom
i maxZoom
. Ta metoda jest przydatna, gdy ograniczasz tylko jedną z wartości. Poniższy kod zmienia tylko minimalny poziom powiększenia.
Swift
mapView.setMinZoom(12, maxZoom: mapView.maxZoom)
Objective-C
[mapView setMinZoom:12 maxZoom:mapView.maxZoom];
Jeśli po zaktualizowaniu minimalnego i maksymalnego powiększenia poziom powiększenia kamery zostanie ustawiony na wartość spoza nowego zakresu, bieżące powiększenie zostanie automatycznie zaktualizowane, aby wyświetlić najbliższą prawidłową wartość. Na przykład w poniższym kodzie pierwotne powiększenie jest zdefiniowane jako 4. Gdy ustawisz zakres powiększenia na 10–15, bieżące powiększenie zostanie zmienione na 10.
Swift
// Sets the zoom level to 4. let camera2 = GMSCameraPosition( latitude: 41.887, longitude: -87.622, zoom: 4 ) let mapView2 = GMSMapView(frame: .zero, camera: camera) // The current zoom, 4, is outside of the range. The zoom will change to 10. mapView.setMinZoom(10, maxZoom: 15)
Objective-C
// Sets the zoom level to 4. GMSCameraPosition *camera2 = [GMSCameraPosition cameraWithLatitude:41.887 longitude:-87.622 zoom:4]; GMSMapView *mapView2 = [GMSMapView mapWithFrame:CGRectZero camera:camera]; // The current zoom, 4, is outside of the range. The zoom will change to 10. [mapView setMinZoom:10 maxZoom:15];