Una classe contenente metodi per creare oggetti CameraUpdate
che modificano la fotocamera di una mappa.
Per modificare la fotocamera della mappa, chiama animateCamera(CameraUpdate)
, animateCamera(CameraUpdate, GoogleMap.CancelableCallback)
o moveCamera(CameraUpdate)
utilizzando un oggetto CameraUpdate
creato con questa classe.
Ad esempio, per aumentare lo zoom su una mappa puoi utilizzare il seguente codice:
GoogleMap map = ...;
map.animateCamera(CameraUpdateFactory.zoomIn());
Prima di utilizzare qualsiasi metodo di questo corso, devi eseguire una delle seguenti operazioni per assicurarti che il corso venga inizializzato:
- Attendi che l'app
GoogleMap
sia disponibile daiMapFragment
oMapView
che hai aggiunto alla domanda. Puoi ottenere l'istanzaGoogleMap
chiamandogetMapAsync()
e in attesa del callbackonMapReady(GoogleMap map)
. - Chiama
initialize(Context)
. Finché non viene lanciato un elementoGooglePlayServicesNotAvailableException
, questo corso verrà inizializzato correttamente.
Guida per gli sviluppatori
Per ulteriori informazioni, consulta la guida per gli sviluppatori Videocamera e vista.
Riepilogo del metodo pubblico
Static CameraUpdate |
new CameraPosition(cameraPosition cameraPosition)
Restituisce un
CameraUpdate che sposta la videocamera in un CameraPosition specificato. |
Static CameraUpdate |
newLatLng(LatLng latLng)
Restituisce un
CameraUpdate che sposta il centro dello schermo a una latitudine e longitudine specificate da un oggetto LatLng . |
Static CameraUpdate |
newLatLngBounds(limiti LatLngBounds, larghezza int, altezza int, spaziatura interna int)
Restituisce un
CameraUpdate che trasforma la fotocamera in modo che i limiti di latitudine/longitudine specificati siano centrati sullo schermo entro un riquadro di delimitazione delle dimensioni specificate al massimo livello di zoom possibile. |
Static CameraUpdate |
newLatLngBounds(limiti LatLngBounds, spaziatura interna interna)
Restituisce un
CameraUpdate che trasforma la fotocamera in modo che i limiti di latitudine/longitudine specificati siano centrati sullo schermo al massimo livello di zoom possibile. |
Static CameraUpdate |
newLatLngZoom(LatLng latLng, zoom in virgola mobile)
Restituisce un
CameraUpdate che sposta il centro dello schermo a una latitudine e longitudine specificate da un oggetto LatLng e si sposta al livello di zoom specificato. |
Static CameraUpdate |
scrollBy(fluttuare xPixel, fluttuare yPixel)
Restituisce un
CameraUpdate che scorre la fotocamera sulla mappa, spostando il centro della vista
per il numero di pixel specificato nelle direzioni x e y. |
Static CameraUpdate |
zoomBy(quantità in virgola mobile, messa a fuoco in punti)
Restituisce una
CameraUpdate che sposta il livello di zoom del punto di vista corrente della videocamera. |
Static CameraUpdate |
zoomBy(quantità in virgola mobile)
Restituisce una
CameraUpdate che sposta il livello di zoom del punto di vista corrente della videocamera. |
Static CameraUpdate |
zoomin()
Restituisce una
CameraUpdate che aumenta lo zoom sulla mappa avvicinando l'altezza del belvedere
alla superficie terrestre. |
Static CameraUpdate |
zoomout()
Restituisce una
CameraUpdate che diminuisce lo zoom sulla mappa allontanando l'altezza del punto panoramico
dalla superficie terrestre. |
Static CameraUpdate |
zoomTo(zoom mobile)
Restituisce una
CameraUpdate che sposta il punto di vista della fotocamera a un determinato livello di zoom. |
Riepilogo del metodo ereditato
Metodi pubblici
pubblica statica CameraUpdate newCameraPosition ( CameraPosition cameraPosition)
Restituisce un CameraUpdate
che sposta la videocamera in un CameraPosition
specificato. In effetti, viene creata una trasformazione dalla latitudine, dalla longitudine e dal livello di zoom dell'oggetto CameraPosition
, dal rilevamento e dall'inclinazione.
Parametri
cameraPosition |
---|
Restituisce
- un
CameraUpdate
che contiene la trasformazione.
pubblica statica CameraUpdate newLatLng (LatLng latLng)
Restituisce un CameraUpdate
che sposta il centro dello schermo a una latitudine e longitudine specificate da un oggetto LatLng
. In questo modo la fotocamera viene centrata sull'oggetto LatLng
.
Parametri
latLng | un oggetto LatLng contenente la latitudine e la longitudine desiderate. |
---|
Restituisce
- un
CameraUpdate
che contiene la trasformazione.
public static CameraUpdate newLatLngBounds (LatLngBounds limiti, larghezza int, altezza int, spaziatura interna int)
Restituisce un CameraUpdate
che trasforma la fotocamera in modo che i limiti di latitudine/longitudine specificati siano centrati sullo schermo entro un riquadro di delimitazione delle dimensioni specificate al massimo livello di zoom possibile. Puoi specificare una spaziatura interna aggiuntiva per limitare ulteriormente le dimensioni del riquadro di delimitazione. Il valore restituito da CameraUpdate
ha un supporto di 0 e un'inclinazione di 0.
A differenza di newLatLngBounds(LatLngBounds, int)
, puoi utilizzare l'CameraUpdate
restituito con questo metodo per cambiare la fotocamera prima della fase di layout della mappa, perché gli argomenti specificano le dimensioni desiderate del riquadro di delimitazione.
Parametri
limiti | l'area geografica per rientrare nel riquadro di delimitazione |
---|---|
width | larghezza del riquadro di delimitazione in pixel (px) |
height | altezza riquadro di delimitazione in pixel (px) |
padding | limitazione di dimensioni aggiuntive (in px) del riquadro di delimitazione |
Restituisce
- un
CameraUpdate
che contiene la trasformazione.
public static CameraUpdate newLatLngBounds (limiti LatLngBounds, spaziatura interna interna)
Restituisce un CameraUpdate
che trasforma la fotocamera in modo che i limiti di latitudine/longitudine specificati siano centrati sullo schermo al massimo livello di zoom possibile. Puoi specificare la spaziatura interna per inserire il riquadro di delimitazione dai bordi della visualizzazione mappa. Il valore restituito CameraUpdate
ha un supporto di 0 e un'inclinazione di 0.
Non modificare la fotocamera con questo aggiornamento della fotocamera finché la mappa non è stata sottoposta a layout (in modo che questo metodo determini correttamente il riquadro di delimitazione e il livello di zoom appropriati, la mappa deve avere una dimensione). In caso contrario, verrà generato un IllegalStateException
. NON è sufficiente per rendere disponibile la mappa; è necessario che anche la vista contenente la mappa sia stata sottoposta a un layout tale che le sue dimensioni siano state determinate. Se non hai la certezza che questo si sia verificato, utilizza invece newLatLngBounds(LatLngBounds, int, int, int)
e fornisci le dimensioni della mappa manualmente.
Parametri
limiti | area geografica per adattarsi allo schermo |
---|---|
padding | (in px) a sinistra tra i bordi del riquadro di delimitazione e i bordi della visualizzazione. Questo valore viene applicato a tutti e quattro i lati del riquadro di delimitazione. |
Restituisce
- un
CameraUpdate
che contiene la trasformazione.
public static CameraUpdate newLatLngZoom (LatLng latLng, zoom in virgola mobile)
Restituisce un CameraUpdate
che sposta il centro dello schermo a una latitudine e longitudine specificate da un oggetto LatLng
e si sposta al livello di zoom specificato.
Parametri
latLng | un oggetto LatLng contenente la latitudine e la longitudine desiderate. |
---|---|
zoom | il livello di zoom desiderato, compreso tra 2 e 21,0. I valori inferiori a questo intervallo sono impostati su 2,0, mentre quelli superiori al valore impostato sono impostati su 21,0. Aumenta il valore per aumentare lo zoom. Non tutte le aree presentano riquadri con i livelli di zoom più elevati. |
Restituisce
- un
CameraUpdate
che contiene la trasformazione.
pubblica statica CameraUpdate scrollBy (decimale mobile, yPixel mobile)
Restituisce un CameraUpdate
che scorre la fotocamera sulla mappa, spostando il centro della vista
per il numero di pixel specificato nelle direzioni x e y.
Esempi:
- Se xPixel = 5 e yPixel = 0, il sistema scorre verso destra spostando la fotocamera in modo che la mappa abbia spostato i 5 pixel a sinistra.
- Se xPixel = 0 e yPixel = 5, il sistema scorre verso il basso spostando la fotocamera in modo che la mappa abbia spostato i 5 pixel verso l'alto.
Lo scorrimento è relativo all'orientamento attuale della fotocamera. Ad esempio, se la fotocamera rileva una temperatura di 90 gradi, verso est è "su" e, se scorri verso destra, la videocamera si sposta verso sud.
Parametri
Pixel x | Il numero di pixel da scorrere in orizzontale. Un valore positivo sposta la fotocamera verso destra, rispetto all'orientamento attuale. Un valore negativo sposta la fotocamera verso sinistra, rispetto all'orientamento attuale. |
---|---|
Pixel Y | il numero di pixel da scorrere in verticale. Un valore positivo sposta la videocamera verso il basso, in base al suo orientamento attuale. Un valore negativo sposta la videocamera verso l'alto rispetto all'orientamento attuale. |
Restituisce
- un
CameraUpdate
che contiene la trasformazione.
pubblica statica CameraUpdate zoomBy (quantità in virgola mobile, focus punto)
Restituisce una CameraUpdate
che sposta il livello di zoom del punto di vista corrente della videocamera.
Un punto specificato da un focus rimarrà fisso (ovvero corrisponde allo stesso lat/long sia prima che dopo il processo di zoom).
Questo metodo è diverso da zoomTo(float)
in quanto lo zoom è relativo alla fotocamera
corrente.
Ad esempio, se LatLng
(11.11, 22.22) si trova attualmente nella posizione dello schermo (23,
45). Dopo aver chiamato questo metodo con un importo di zoom e questo LatLng
, la posizione dello schermo di questo LatLng
rimarrà (23, 45).
Parametri
amount | per modificare il livello di zoom. I valori positivi indicano che lo zoom si avvicina alla superficie terrestre, mentre i valori negativi indicano che lo zoom si allontana dalla superficie della Terra. |
---|---|
obiettivo | posizione dei pixel sullo schermo che deve rimanere fissa dopo il processo di zoom. Il lat/long che si trovava nella posizione del pixel prima dello spostamento della fotocamera rimarrà invariato dopo lo spostamento della fotocamera. |
Restituisce
- un
CameraUpdate
che contiene la trasformazione.
pubblica statica CameraUpdate zoomBy (quantità in virgola mobile)
Restituisce una CameraUpdate
che sposta il livello di zoom del punto di vista corrente della videocamera.
Questo metodo è diverso da zoomTo(float)
in quanto lo zoom è relativo alla fotocamera
corrente.
Parametri
amount | per modificare il livello di zoom. I valori positivi indicano che lo zoom si avvicina alla superficie terrestre, mentre i valori negativi indicano che lo zoom si allontana dalla superficie della Terra. |
---|
Restituisce
- un
CameraUpdate
che contiene la trasformazione.
pubblica statica CameraUpdate zoom ()
Restituisce una CameraUpdate
che aumenta lo zoom sulla mappa avvicinando l'altezza del belvedere
alla superficie terrestre. L'incremento zoom è pari a 1,0.
Restituisce
- un
CameraUpdate
che contiene la trasformazione.
pubblica statica CameraUpdate zoomOut ()
Restituisce una CameraUpdate
che diminuisce lo zoom sulla mappa allontanando l'altezza del punto panoramico
dalla superficie terrestre. L'incremento zoom è pari a -1,0.
Restituisce
- un
CameraUpdate
che contiene la trasformazione.
pubblica statica CameraUpdate zoomTo (zoom mobile)
Restituisce una CameraUpdate
che sposta il punto di vista della fotocamera a un determinato livello di zoom.
Parametri
zoom | il livello di zoom desiderato, compreso tra 2 e 21,0. I valori inferiori a questo intervallo sono impostati su 2,0, mentre quelli superiori al valore impostato sono impostati su 21,0. Aumenta il valore per aumentare lo zoom. Non tutte le aree presentano riquadri con i livelli di zoom più elevati. |
---|