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
GoogleMap
seja disponibilizado em umMapFragment
ouMapView
que você adicionou ao seu app. Você pode acessar oGoogleMap
instância chamandogetMapAsync()
e aguardando o callbackonMapReady(GoogleMap map)
. - Ligue para a
initialize(Context)
. Contanto que umaGooglePlayServicesNotAvailableException
nã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
CameraUpdate
contendo 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
CameraUpdate
contendo 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
CameraUpdate
contendo 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
CameraUpdate
contendo 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
CameraUpdate
contendo 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
CameraUpdate
contendo 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
CameraUpdate
contendo 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
CameraUpdate
contendo 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
CameraUpdate
contendo 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
CameraUpdate
contendo 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. |
---|