Segui questi passaggi per configurare gli stili basati sui dati per i set di dati.
Ottieni una chiave API e abilita le API
Prima di utilizzare lo stile basato sui dati per i set di dati, devi disporre di: un progetto cloud con un account di fatturazione e con Maps SDK for iOS e l'API Maps Datasets abilitati. Per scoprire di più, consulta:
Crea un ID mappa
Un ID mappa è un identificatore univoco che rappresenta una specifica di Google Maps. Puoi creare ID mappa e aggiornare uno stile associato a un ID mappa in qualsiasi momento nella console Google Cloud.

Crea un nuovo stile di mappa
Per creare un nuovo stile di mappa, segui le istruzioni riportate in Crea e utilizza gli stili di mappa. Al termine, associa lo stile all'ID mappa appena creato.
Aggiorna il codice di inizializzazione della mappa
Questo passaggio richiede che un ID mappa sia associato a uno stile con uno o più livelli degli elementi attivati. Per verificare che l'ID mappa sia configurato correttamente nella console Cloud, controlla come è configurato in Gestione mappa.
Swift
// A map ID using a style with one or more feature layers enabled let mapID = GMSMapID(identifier: "YOUR_MAP_ID") let camera = GMSCameraPosition(latitude: 40, longitude: -80, zoom: 7) let options = GMSMapViewOptions() options.camera = camera options.mapID = mapID let mapView = GMSMapView(options: options)
Objective-C
// A map ID using a style with one or more feature layers enabled GMSMapID *mapID = [GMSMapID mapIDWithIdentifier:@"MAP_ID"]; GMSCameraPosition *camera = [GMSCameraPosition cameraWithLatitude:40 longitude:-80 zoom:7]; GMSMapViewOptions *options = [[GMSMapViewOptions alloc] init]; options.camera = camera; options.mapID = mapID; GMSMapView *mapView = [[GMSMapView alloc] initWithOptions:options];
Controlla le funzionalità della mappa
Gli stili basati sui dati per i set di dati richiedono funzionalità abilitate nella console Google Cloud e associate a un ID mappa. Poiché gli ID mappa sono soggetti a modifiche, puoi chiamare mapView.mapCapabilities su un GMSMapView per verificare se una determinata funzionalità (ad esempio lo stile basato sui dati) è disponibile prima di chiamarla.
Puoi anche rilevare le modifiche alle funzionalità della mappa iscrivendoti a GMSViewDelegate.
Questo esempio mostra come utilizzare il protocollo per verificare i requisiti dello stile basato sui dati.
Swift
class SampleViewController: UIViewController { private lazy var mapView: GMSMapView = { let options = GMSMapViewOptions() options.mapID = GMSMapID(identifier: "YOUR_MAP_ID") options.camera = GMSCameraPosition(latitude: 40, longitude: -80, zoom: 7) return GMSMapView(options: options) }() override func loadView() { self.view = mapView mapView.delegate = self } } extension SampleViewController: GMSMapViewDelegate { func mapView(_ mapView: GMSMapView, didChange mapCapabilities: GMSMapCapabilityFlags) { if (!mapCapabilities.contains(.dataDrivenStyling)) { // Data-driven styling is *not* available, add a fallback. // Existing feature layers are also unavailable. } } }
Objective-C
@interface SampleViewController: UIViewController <GMSMapViewDelegate> @end @implementation SampleViewController - (void)loadView { GMSCameraPosition *camera = [GMSCameraPosition cameraWithLatitude:40 longitude:-80 zoom:7]; GMSMapViewOptions *options = [[GMSMapViewOptions alloc] init]; options.camera = camera; options.mapID = [GMSMapID mapIDWithIdentifier:@"MAP_ID"]; GMSMapView *mapView = [[GMSMapView alloc] initWithOptions:options]; mapView.delegate = self; self.view = mapView; } - (void)mapView:(GMSMapView *)mapView didChangeMapCapabilities:(GMSMapCapabilityFlags)mapCapabilities { if (!(mapCapabilities & GMSMapCapabilityFlagsDataDrivenStyling)) { // Data-driven styling is *not* available, add a fallback. // Existing feature layers are also unavailable. } } @end