Uma classe que contém métodos para criar objetos CameraUpdate que mudam a câmera de um mapa.
Se quiser modificar a câmera do mapa, chame animateCamera(CameraUpdate), animateCamera(CameraUpdate, GoogleMap.CancelableCallback) ou moveCamera(CameraUpdate) usando um objeto CameraUpdate criado com essa classe.
Por exemplo, para aumentar o zoom em um mapa, você pode usar o seguinte código:
GoogleMap map = ...;
map.animateCamera(CameraUpdateFactory.zoomIn());
Antes de usar qualquer método desta classe, siga um destes procedimentos para garantir que essa classe é inicializada:
- Aguarde até que um
GoogleMapseja disponibilizado em umMapFragmentouMapViewque você adicionou ao seu app. Você pode acessar oGoogleMapinstância chamandogetMapAsync()e aguardando o callbackonMapReady(GoogleMap map). - Ligue para a
initialize(Context). Contanto que umaGooglePlayServicesNotAvailableExceptionnão seja gerada, essa classe será inicializado.
Guia do desenvolvedor
Para mais informações, leia Câmera e visualização guia para desenvolvedores.
Resumo do método público
| estática CameraUpdate |
newCameraPosition(CameraPosition cameraPosition)
Retorna um
CameraUpdate que move a câmera para um CameraPosition especificado. |
| estática CameraUpdate |
newLatLng(latLng de LatLng)
Retorna um
CameraUpdate que move o centro da tela para uma latitude e uma longitude.
especificado por um objeto LatLng. |
| estática CameraUpdate |
newLatLngBounds(LatLngBounds limites, int largura, int height, int padding)
Retorna um
CameraUpdate que transforma a câmera de modo que o
os limites de latitude/longitude são centralizados na tela, dentro de uma caixa delimitadora de dimensões especificadas.
no maior nível de zoom possível. |
| estática CameraUpdate |
newLatLngBounds(limites de LatLngBounds, preenchimento inteiro)
Retorna um
CameraUpdate que transforma a câmera de modo que o
os limites de latitude/longitude são centralizados na tela, com o maior nível de zoom possível. |
| estática CameraUpdate |
newLatLngZoom(LatLng latLng, zoom flutuante)
Retorna um
CameraUpdate que move o centro da tela para uma latitude e uma longitude.
especificado por um objeto LatLng e se move para o nível de zoom especificado. |
| estática CameraUpdate |
scrollBy(flutuante xPixel, yPixel flutuante)
Retorna um
CameraUpdate que rola a câmera sobre o mapa, deslocando o centro do
visualização pelo número especificado de pixels nas direções x e y. |
| estática CameraUpdate |
zoomBy(valor flutuante, foco do ponto)
Retorna um
CameraUpdate que muda o nível de zoom do ponto de vista atual da câmera. |
| estática CameraUpdate |
zoomBy(valor flutuante)
Retorna um
CameraUpdate que muda o nível de zoom do ponto de vista atual da câmera. |
| estática CameraUpdate |
zoomIn()
Retorna um
CameraUpdate que aumenta o zoom no mapa movendo a altura do ponto de vista
à superfície da Terra. |
| estática CameraUpdate |
zoomOut()
Retorna um
CameraUpdate que diminui o zoom no mapa movendo a altura do ponto de vista
mais longe da superfície terrestre. |
| estática CameraUpdate |
zoomTo(zoom flutuante)
Retorna um
CameraUpdate que move o ponto de vista da câmera para um nível de zoom específico. |
Resumo do método herdado
Métodos públicos
públicas estática CameraUpdate newCameraPosition (CameraPosition cameraPosition)
Retorna um CameraUpdate que move a câmera para um CameraPosition especificado. Em
isso cria uma transformação da latitude do objeto CameraPosition,
longitude, nível de zoom, direção e inclinação.
Parâmetros
| cameraPosition |
|---|
Retorna
- um
CameraUpdatecontendo a transformação.
públicas estática CameraUpdate newLatLng (LatLng latLng)
Retorna um CameraUpdate que move o centro da tela para uma latitude e uma longitude.
especificado por um objeto LatLng. Isso centraliza a câmera no objeto LatLng.
Parâmetros
| latLng | um objeto LatLng contendo a latitude e longitude desejadas. |
|---|
Retorna
- um
CameraUpdatecontendo a transformação.
públicas estática CameraUpdate newLatLngBounds (LatLngBounds limites, int largura, int altura, int padding)
Retorna um CameraUpdate que transforma a câmera de modo que o
os limites de latitude/longitude são centralizados na tela, dentro de uma caixa delimitadora de dimensões especificadas.
no maior nível de zoom possível. Você pode especificar um padding adicional para restringir ainda mais
o tamanho da caixa delimitadora. O CameraUpdate retornado tem um rumo de 0 e uma inclinação
de zero.
Ao contrário de newLatLngBounds(LatLngBounds, int), é possível usar o CameraUpdate
retornado por esse método para alterar a câmera antes da fase de layout do mapa, porque a
especificam o tamanho desejado da caixa delimitadora.
Parâmetros
| limites | a região para caber na caixa delimitadora |
|---|---|
| largura | largura da caixa delimitadora em pixels (px) |
| altura | altura da caixa delimitadora em pixels (px) |
| preenchimento | restrição de tamanho adicional (em px) da caixa delimitadora |
Retorna
- um
CameraUpdatecontendo a transformação.
públicas estática CameraUpdate newLatLngBounds (LatLngBounds limites, preenchimento inteiro)
Retorna um CameraUpdate que transforma a câmera de modo que o
os limites de latitude/longitude são centralizados na tela, com o maior nível de zoom possível. Você pode
especificar o preenchimento para inserir a caixa delimitadora nas bordas da visualização de mapa. O
CameraUpdate tem um rolamento de 0 e uma inclinação de 0.
Não mude a câmera com essa atualização até que o mapa tenha passado pelo layout (em
para que esse método determine corretamente a caixa delimitadora e o nível de zoom apropriados, o
mapa deve ter um tamanho). Caso contrário, uma IllegalStateException será gerada. NÃO é
suficientes para que o mapa esteja disponível; a visualização que contém o mapa também deve ter passado por
layout para que as dimensões sejam determinadas. Se você não tiver certeza de que isso tem
ocorreu, use newLatLngBounds(LatLngBounds, int, int, int) e forneça o
dimensões do mapa manualmente.
Parâmetros
| limites | região para caber na tela |
|---|---|
| preenchimento | espaço (em px) para deixar entre as bordas da caixa delimitadora e as bordas de visualização. Isso é aplicado aos quatro lados da caixa delimitadora. |
Retorna
- um
CameraUpdatecontendo a transformação.
públicas estática CameraUpdate newLatLngZoom (LatLng latLng, zoom flutuante)
Retorna um CameraUpdate que move o centro da tela para uma latitude e uma longitude.
especificado por um objeto LatLng e se move para o nível de zoom especificado.
Parâmetros
| latLng | um objeto LatLng contendo a latitude e longitude desejadas. |
|---|---|
| zoom | o nível de zoom desejado, no intervalo de 2,0 a 21,0. Valores abaixo desse intervalo são é definido como 2,0, e os valores acima dele são definidos como 21,0. Aumente o valor para ampliar. Nem todas áreas têm blocos nos maiores níveis de zoom. |
Retorna
- um
CameraUpdatecontendo a transformação.
públicas estática CameraUpdate scrollBy (xPixel flutuante, yPixel flutuante)
Retorna um CameraUpdate que rola a câmera sobre o mapa, deslocando o centro do
visualização pelo número especificado de pixels nas direções x e y.
Exemplos:
- Se xPixel = 5 e yPixel = 0, o sistema rolará para a direita movendo a câmera de modo que o mapa parece ter sido deslocado 5 pixels para a esquerda.
- Se xPixel = 0 e yPixel = 5, o sistema rolará para baixo movendo a câmera para que o mapa parece ter sido deslocado 5 pixels para cima.
A rolagem está relacionada à orientação atual da câmera. Por exemplo, se a câmera estiver com 90 graus, o leste fica "para cima" e rolar para a direita moverá a câmera para o sul.
Parâmetros
| xPixel | o número de pixels para rolar horizontalmente. Um valor positivo move a câmera para em relação à orientação atual. Um valor negativo move a câmera para à esquerda em relação à orientação atual. |
|---|---|
| yPixel | o número de pixels para rolar verticalmente. Um valor positivo move a câmera para baixo em relação à orientação atual. Um valor negativo move a câmera para cima em relação à orientação atual. |
Retorna
- um
CameraUpdatecontendo a transformação.
públicas estática CameraUpdate zoomBy (valor flutuante, foco do ponto)
Retorna um CameraUpdate que muda o nível de zoom do ponto de vista atual da câmera.
Um ponto especificado pelo foco permanece fixo (isto é, corresponde à mesma latitude/longitude antes e depois do processo de zoom).
Esse método é diferente do zoomTo(float), porque o zoom é relativo à
câmera.
Por exemplo, se a LatLng (11,11, 22,22) estiver no local da tela (23,
45). Depois de chamar esse método com um valor de zoom e esse LatLng, o local da tela
desse LatLng ainda será (23, 45).
Parâmetros
| amount | para mudar o nível de zoom. Valores positivos indicam zoom mais próximo do superfície da Terra, enquanto valores negativos indicam zoom na superfície da Terra. |
|---|---|
| foco | localização do pixel na tela que deve permanecer fixa depois do processo de zoom. A latitude/longitude que estava no local do pixel antes da movimentação da câmera permanecerá a mesma depois que a câmera for movida. |
Retorna
- um
CameraUpdatecontendo a transformação.
públicas estática CameraUpdate zoomBy (valor flutuante)
Retorna um CameraUpdate que muda o nível de zoom do ponto de vista atual da câmera.
Esse método é diferente do zoomTo(float), porque o zoom é relativo à
câmera.
Parâmetros
| amount | para mudar o nível de zoom. Valores positivos indicam zoom mais próximo do superfície da Terra, enquanto valores negativos indicam zoom na superfície da Terra. |
|---|
Retorna
- um
CameraUpdatecontendo a transformação.
públicas estática CameraUpdate zoomIn ()
Retorna um CameraUpdate que aumenta o zoom no mapa movendo a altura do ponto de vista
à superfície da Terra. O incremento de zoom é 1,0.
Retorna
- um
CameraUpdatecontendo a transformação.
públicas estática CameraUpdate zoomOut ()
Retorna um CameraUpdate que diminui o zoom no mapa movendo a altura do ponto de vista
mais longe da superfície terrestre. O incremento de zoom é -1,0.
Retorna
- um
CameraUpdatecontendo a transformação.
públicas estática CameraUpdate zoomTo (zoom flutuante)
Retorna um CameraUpdate que move o ponto de vista da câmera para um nível de zoom específico.
Parâmetros
| zoom | o nível de zoom desejado, no intervalo de 2,0 a 21,0. Valores abaixo desse intervalo são é definido como 2,0, e os valores acima dele são definidos como 21,0. Aumente o valor para ampliar. Nem todas áreas têm blocos nos maiores níveis de zoom. |
|---|