Controlli e gesti

Seleziona piattaforma: Android iOS JavaScript

L'SDK Maps per Android ti consente di personalizzare il modo in cui gli utenti possono interagire con la tua mappa, determinando quali componenti dell'interfaccia utente integrati vengono visualizzati sulla mappa e quali gesti sono consentiti.

Esempi di codice

Il repository APIApis su GitHub include un esempio che dimostra l'uso delle opzioni di controllo e dei gesti:

Modalità Lite per un'interazione minima da parte dell'utente

Se vuoi una mappa leggera con un'interazione minima tra gli utenti, valuta la possibilità di utilizzare una mappa in modalità Lite. La modalità Lite offre un'immagine bitmap di una mappa in una posizione specifica e a livello di zoom. In modalità Lite, gli utenti non possono eseguire una panoramica o lo zoom sulla mappa e i gesti non funzionano. Per maggiori dettagli, consulta la guida alla modalità Lite.

Controlli interfaccia utente

L'API di Google Maps offre controlli UI integrati simili a quelli disponibili nell'applicazione Google Maps sul tuo telefono Android. Puoi attivare/disattivare la visibilità di questi controlli utilizzando la classe UiSettings, che può essere ottenuta da un GoogleMap con il metodo GoogleMap.getUiSettings. Le modifiche apportate a questo corso vengono applicate immediatamente sulla mappa. Per un esempio di queste funzionalità, guarda l'attività demo nelle Impostazioni UI nell'applicazione di esempio.

Puoi configurare la maggior parte di queste opzioni anche quando la mappa viene creata tramite attributi XML o utilizzando la classe GoogleMapOptions. Per ulteriori dettagli, consulta Configurazione dello stato iniziale.

Ogni controllo di interfaccia utente ha una posizione predeterminata rispetto al bordo della mappa. Puoi spostare i controlli dal bordo superiore, inferiore, sinistro o destro aggiungendo Spaziatura interna all'oggetto GoogleMap.

Controlli di zoom

L'API di Google Maps fornisce controlli di zoom integrati che vengono visualizzati nell'angolo in basso a destra della mappa. Sono disattivati per impostazione predefinita, ma possono essere attivati chiamando UiSettings.setZoomControlsEnabled(true).

Controlli di zoom

Bussola

L'API di Google Maps fornisce un'immagine della bussola che viene visualizzata nell'angolo in alto a sinistra della mappa in determinate circostanze. La bussola verrà visualizzata sempre quando la fotocamera è orientata in modo da non avere un cuscinetto o un'inclinazione diversa da zero. Quando l'utente fa clic sulla bussola, la fotocamera torna a una posizione con orientamento e inclinazione pari a zero (orientamento predefinito) e la bussola scompare rapidamente dopo. Puoi disattivare completamente la comparsa chiamando UiSettings.setCompassEnabled(boolean). Tuttavia, non puoi forzare la bussola a essere sempre visualizzata.

Bussola

Pulsante La mia posizione

Il pulsante La mia posizione viene visualizzato nell'angolo in alto a destra dello schermo solo quando il livello La mia posizione è attivo. Per maggiori dettagli, consulta la guida ai dati sulla posizione.

Pulsante La mia posizione

Selettore livelli

Per impostazione predefinita, quando un utente visualizza una mappa di interni, vicino al bordo destro dello schermo viene visualizzato un selettore di livelli (selettore dei piani). Quando sono visibili due o più mappe di interni, il selettore del livello viene applicato all'edificio attualmente attivo, che in genere è quello più vicino al centro dello schermo. A ogni edificio è associato un livello predefinito che verrà selezionato alla prima visualizzazione del selettore. Gli utenti possono scegliere un livello diverso selezionandolo dal selettore.

Puoi disattivare o attivare il controllo del selettore di livello chiamando GoogleMap.getUiSettings().setIndoorLevelPickerEnabled(boolean).

Questo metodo è utile se vuoi sostituire il selettore del livello predefinito con il tuo.

Selettore livelli

Barra degli strumenti Mappa

Per impostazione predefinita, una barra degli strumenti viene visualizzata in basso a destra nella mappa quando un utente tocca un indicatore. La barra degli strumenti consente all'utente di accedere rapidamente all'app Google Maps per dispositivi mobili.

Puoi attivare e disattivare la barra degli strumenti chiamando UiSettings.setMapToolbarEnabled(boolean).

In una mappa modalità Lite, la barra degli strumenti persiste indipendentemente dalle azioni dell'utente. In una mappa completamente interattiva, la barra degli strumenti si apre quando l'utente tocca un indicatore e scorre di nuovo quando l'indicatore non è più attivo.

Nella barra degli strumenti vengono visualizzate icone che forniscono accesso a una visualizzazione mappa o a una richiesta di indicazioni stradali nell'app per dispositivi mobili Google Maps. Quando un utente tocca un'icona nella barra degli strumenti, l'API crea un intent per avviare l'attività corrispondente nell'app per dispositivi mobili Google Maps.

Mappa barra degli strumenti

La barra degli strumenti è visibile in basso a destra nella mappa nello screenshot riportato sopra. Zero, una o entrambe le icone di intent vengono visualizzate sulla mappa, a seconda dei contenuti della mappa e a condizione che l'app per dispositivi mobili di Google Maps supporti l'intento risultante.

Gesti della mappa

Una mappa creata con l'SDK Maps per Android supporta gli stessi gesti dell'applicazione Google Maps. Tuttavia, in alcune situazioni potrebbe essere necessario disattivare determinati gesti per preservare lo stato della mappa. Puoi anche impostare zoom, panoramica, inclinazione e rilevamento. per ulteriori dettagli. Tieni presente che la disattivazione dei gesti non influisce sulla modifica della posizione della videocamera in modo programmatico.

Come per i controlli dell'interfaccia utente, puoi attivare/disattivare i gesti con la classe UiSettings, che può essere ottenuta da un GoogleMap chiamando GoogleMap.getUiSettings. Le modifiche apportate a questo corso vengono immediatamente riflesse sulla mappa. Per un esempio di queste funzionalità, guarda l'attività demo nelle Impostazioni UI nell'applicazione di esempio (qui per scoprire come installarla).

Puoi configurare queste opzioni anche quando la mappa viene creata tramite Attributi XML o utilizzando la classe GoogleMapOptions. Consulta Configurazione della mappa per ulteriori dettagli.

Gesti di zoom

La mappa risponde a diversi gesti che possono cambiare il livello di zoom della fotocamera:

  • Tocca due volte per aumentare il livello di zoom di 1 (aumento dello zoom).
  • Tocca con due dita per diminuire il livello di zoom di 1 (Diminuisci lo zoom).
  • Allungamento/pizzicamento con due dita
  • Eseguire lo zoom di un dito toccando due volte ma senza rilasciare al secondo tocco, quindi facendo scorrere il dito verso l'alto per diminuire lo zoom o verso il basso per aumentare lo zoom.

Puoi disattivare i gesti di zoom chiamando UiSettings.setZoomGesturesEnabled(boolean). Non influisce sulla possibilità per un utente di utilizzare i controlli di zoom per aumentare e diminuire lo zoom.

Gesti di scorrimento (panoramica)

Un utente può scorrere (panoramica) sulla mappa trascinandola con il dito. Puoi disattivare lo scorrimento chiamando UiSettings.setScrollGesturesEnabled(boolean).

Gesti di inclinazione

Un utente può inclinare la mappa posizionando due dita sulla mappa e spostandole verso il basso o verso l'alto per aumentare o diminuire l'angolo di inclinazione, rispettivamente. Puoi disabilitare i gesti di inclinazione chiamando UiSettings.setTiltGesturesEnabled(boolean).

Ruota i gesti

Un utente può ruotare la mappa posizionando due dita sulla mappa e applicando un movimento di rotazione. Puoi disattivare la rotazione chiamando UiSettings.setRotateGesturesEnabled(boolean).