Segui questi passaggi per configurare gli stili basati sui dati per i confini.
Attivare il nuovo renderer delle mappe
È disponibile un renderer delle mappe di cui è stato eseguito l'upgrade a partire dalla versione 18.0.0 del Maps SDK for Android. Questo renderer apporta molti miglioramenti, tra cui supporto per la Personalizzazione delle mappe basata su cloud a Maps SDK for Android.
Con il rilascio della versione 18.2.0 di Maps SDK for Android, Google ha cambiato la renderer predefinito dal renderer precedente al renderer della mappa aggiornato. Questo significa che il renderer delle mappe aggiornato è ora utilizzato per impostazione predefinita nella tua app quando crei una nuova app o crei di nuovo un'app esistente.
Creare un ID mappa
Per creare un nuovo ID mappa, segui i passaggi descritti in Creare un ID mappa. Assicurati di impostare il tipo di mappa su Android.
Crea un nuovo stile di mappa
Per creare un nuovo stile di mappa, segui le istruzioni riportate in Gestire gli stili di mappa per creare lo stile e associarlo all'ID mappa appena creato.
Seleziona i livelli degli elementi nel nuovo stile della mappa
Nella console API di Google puoi selezionare i livelli degli elementi da visualizzare il tuo nuovo stile di mappa. Il livello delle caratteristiche determina quali tipi di confini vengono visualizzati sulla mappa (ad esempio località, province e così via).
- Nella console dell'API di Google, vai alla pagina Stili mappa.
- Seleziona un progetto, se richiesto.
- Seleziona uno stile di mappa.
- Fai clic sul menu a discesa Livelli di elementi per aggiungere o rimuovere livelli.
- Fai clic su Salva per salvare le modifiche e renderle disponibili per le tue mappe.
Aggiorna il codice di inizializzazione della mappa
Questo passaggio richiede l'ID mappa appena creato. Puoi trovarlo sul tuo pagina Gestione di Maps.
Per aggiungere l'ID mappa al codice di inizializzazione, consulta Aggiungere l'ID mappa all'app.
Accedere a un livello di elementi di una mappa
Utilizzi una FeatureLayer
per rappresentare ogni livello di elementi di una mappa, come un codice postale o
Livello degli elementi località. Per accedere a un oggetto livello elemento, chiama
GoogleMap.getFeatureLayer()
all'inizializzazione della mappa:
Java
private FeatureLayer postalCodeLayer;
@Override public void onMapReady(GoogleMap map) { // Get the POSTAL_CODE feature layer. postalCodeLayer = map.getFeatureLayer(new FeatureLayerOptions.Builder() .featureType(FeatureType.POSTAL_CODE) .build()); ... }
Kotlin
private var postalCodeLayer: FeatureLayer? = null
override fun onMapReady(googleMap: GoogleMap) { // Get the POSTAL_CODE feature layer. postalCodeLayer = googleMap.getFeatureLayer(new FeatureLayerOptions.Builder() .featureType(FeatureType.POSTAL_CODE) .build()) ... }
Passa un oggetto FeatureLayerOptions
a getFeatureLayer()
per specificare il tipo di livello di funzionalità. In questo
Ad esempio, vuoi accedere al livello POSTAL_CODE
. Crea un altro
FeatureLayer
per ogni livello a cui vuoi applicare uno stile.
Una volta ottenuto l'oggetto FeatureLayer
, puoi applicare gli stili ai poligoni di confine della funzionalità.
Controlla le funzionalità della mappa (obbligatorio)
Gli stili basati sui dati per i confini richiedono un ID mappa. Se l'ID mappa non è presente o se viene passato un ID mappa non valido, lo stile basato sui dati per i confini non può essere caricato. Come
passaggio per la risoluzione dei problemi, puoi utilizzare
MapCapabilities
per verificare se gli stili basati sui dati per i confini sono supportati.
Kotlin
val capabilities: MapCapabilities = googleMap.getMapCapabilities() System.out.println("Data-driven Styling is available: " + capabilities.isDataDrivenStylingAvailable())
Java
MapCapabilities capabilities = googleMap.getMapCapabilities(); System.out.println("Data-driven Styling is available: " + capabilities.isDataDrivenStylingAvailable());