Os mapas são representados na API pela GMSMapView classe, uma
subclasse de UIView. O mapa é o objeto mais significativo no SDK do Maps para iOS e fornece os métodos necessários para adicionar, remover e gerenciar outros objetos, como marcadores e polilinhas.
Introdução
O SDK do Maps para iOS permite mostrar um mapa do Google no seu aplicativo iOS. Esses mapas têm a mesma aparência que os mapas que você vê em o Google Maps app para iOS, e o SDK expõe muitos dos mesmos recursos.
Além da funcionalidade de mapeamento, a API também oferece suporte a uma variedade de interações consistentes com o modelo de interface do iOS. Por exemplo, você pode configurar interações com um mapa definindo respondentes que reagem a gestos do usuário, como tocar e tocar duas vezes.
A classe mais importante ao trabalhar com um objeto de mapa é GMSMapView.
GMSMapView processa as seguintes operações automaticamente:
- Conexão com o serviço do Google Maps
- Download de blocos de mapas
- Exibição de blocos na tela do dispositivo
- Exibição de vários controles, como movimento e zoom
- Resposta aos gestos de movimento e de zoom, deslocando o mapa e aumentando ou diminuindo o zoom
- Resposta a gestos de dois dedos inclinando o ângulo de visualização do mapa
Além dessas operações automáticas, você pode controlar o comportamento e a aparência do mapa pelas propriedades e métodos expostos pela classe GMSMapView. Use GMSMapView para adicionar e remover marcadores, sobreposições de solo e polilinhas, mudar o tipo de mapa mostrado e controlar o que é mostrado no mapa pela classe GMSCameraPosition.
Criar mapas com o SwiftUI
O SwiftUI oferece outra maneira de criar a interface usando uma abordagem declarativa. Você diz ao SwiftUI como quer que a visualização apareça com todos os diferentes estados dela, e o sistema faz o resto. O SwiftUI atualiza a visualização sempre que o estado contido muda devido a um evento ou uma ação do usuário.
O SDK do Maps para iOS é criado com base no UIKit e não oferece uma visualização compatível com o SwiftUI. Para adicionar mapas no SwiftUI, é necessário estar em conformidade com UIViewRepresentable ou UIViewControllerRepresentable. Para saber mais, consulte o
Codelab Como adicionar um mapa ao seu app iOS com o
SwiftUI.
Adicionar um mapa
As etapas básicas para adicionar um mapa são:
Para baixar o SDK, conseguir uma chave de API e adicionar os frameworks necessários, siga as etapas em:
No seu
AppDelegate, forneça a chave de API ao método de classeprovideAPIKey:emGMSServices.Crie ou atualize um
ViewController. Se o mapa for mostrado quando esse controlador de visualização ficar visível, crie-o no métodoviewDidLoad.Ao inicializar a visualização do mapa, defina as opções de configuração com
GMSMapViewOptions. As propriedades incluemframe,camera,mapID,backgroundColorouscreen.Defina a propriedade opções de mapa
cameracom um objetoGMSCameraPosition. Isso especifica o centro e o nível de zoom do mapa.Crie e instancie uma classe
GMSMapViewusando o métodoGMSMapViewoptions:. Se esse mapa for usado como a única visualização do controlador de visualização, o valor padrão da opção de mapaframedeCGRectZeropoderá ser usado como aframede visualização. O mapa será redimensionado automaticamente.Defina o objeto
GMSMapViewcomo a visualização do controlador de visualização. Por exemplo,self.view = mapView;.
O exemplo a seguir adiciona um mapa, centralizado no centro de Cingapura, a um aplicativo.
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; }
Depois de seguir essas etapas, você poderá configurar ainda mais o objeto GMSMapView.
A seguir
Depois de concluir essas etapas, você poderá definir as configurações do mapa.