지도의 카메라를 변경하는 CameraUpdate
객체를 만드는 메서드가 포함된 클래스입니다.
지도의 카메라를 수정하려면 이 클래스로 만든 CameraUpdate
객체를 사용하여 animateCamera(CameraUpdate)
, animateCamera(CameraUpdate, GoogleMap.CancelableCallback)
또는 moveCamera(CameraUpdate)
를 호출합니다.
예를 들어 지도를 확대하려면 다음 코드를 사용하세요.
GoogleMap map = ...;
map.animateCamera(CameraUpdateFactory.zoomIn());
이 클래스의 메서드를 사용하기 전에 다음 중 하나를 실행하여 이 클래스가 초기화되도록 해야 합니다.
- 애플리케이션에 추가한
MapFragment
또는MapView
에서GoogleMap
를 사용할 수 있을 때까지 기다립니다.getMapAsync()
를 호출하고onMapReady(GoogleMap map)
콜백을 기다리면GoogleMap
인스턴스를 가져올 수 있습니다. initialize(Context)
를 호출합니다.GooglePlayServicesNotAvailableException
이 발생하지 않는 한 이 클래스는 올바르게 초기화됩니다.
개발자 가이드
자세한 내용은 카메라 및 뷰 개발자 가이드를 참고하세요.
공개 메서드 요약
정적 CameraUpdate | |
정적 CameraUpdate | |
정적 CameraUpdate |
newLatLngBounds(LatLngBounds 경계, int width, int 높이, int 패딩)
지정된 위도/경도 경계가 최대한 큰 확대/축소 수준에서 지정된 크기의 경계 상자 내에서 화면 중앙에 오도록 카메라를 변환하는
CameraUpdate 를 반환합니다. |
정적 CameraUpdate |
newLatLngBounds(LatLngBounds 경계, int 패딩)
지정된 위도/경도 경계가 가능한 가장 큰 확대/축소 수준에서
화면의 중앙에 오도록 카메라를 변환하는
CameraUpdate 를 반환합니다. |
정적 CameraUpdate |
newLatLngZoom(LatLng latLng, 플로팅 확대/축소)
화면 중심을
LatLng 객체로 지정된 위도와 경도로 이동하고 지정된 확대/축소 수준으로 이동하는 CameraUpdate 를 반환합니다. |
정적 CameraUpdate |
scrollBy(플로트 xPixel, 플로팅 yPixel)
x 및 y 방향으로 지정된 픽셀 수만큼 시야의 중심을 이동하여 지도 위로 카메라를 스크롤하는
CameraUpdate 를 반환합니다. |
정적 CameraUpdate |
zoomBy(부동 소수점 수, 포인트 포커스)
현재 카메라 시점의 확대/축소 수준을 이동하는
CameraUpdate 를 반환합니다. |
정적 CameraUpdate |
zoomBy(부동 소수점 수)
현재 카메라 시점의 확대/축소 수준을 이동하는
CameraUpdate 를 반환합니다. |
정적 CameraUpdate |
zoomIn()
시점의 높이를 지면에 더 가깝게 이동하여 지도를 확대하는
CameraUpdate 를 반환합니다. |
정적 CameraUpdate |
zoomOut()
시점의 높이를 지면에서 더 멀리 이동하여 지도를 축소하는
CameraUpdate 를 반환합니다. |
정적 CameraUpdate |
zoomTo(플로팅 확대/축소)
카메라 시점을 특정 확대/축소 수준으로 이동하는
CameraUpdate 를 반환합니다. |
상속받은 메서드 요약
공개 메서드
공개 정적 CameraUpdate newCameraPosition (CameraPosition cameraPosition)
카메라를 지정된 CameraPosition
로 이동하는 CameraUpdate
를 반환합니다. 실제로 이 작업은 CameraPosition
객체의 위도, 경도, 확대/축소 수준, 방위, 기울기로부터 변환을 생성합니다.
매개변수
cameraPosition |
---|
반환 값
- 변환이 포함된
CameraUpdate
.
공개 정적 CameraUpdate newLatLng (LatLng latLng)
화면 중앙을 LatLng
객체로 지정된 위도와 경도로 이동하는 CameraUpdate
를 반환합니다. 그러면 카메라가 LatLng
객체의 중앙에 배치됩니다.
매개변수
latLng | 원하는 위도와 경도가 포함된 LatLng 객체 |
---|
반환 값
- 변환이 포함된
CameraUpdate
.
공개 정적 CameraUpdate newLatLngBounds (LatLngBounds 경계, int 너비, int 높이, int 패딩)
지정된 위도/경도 경계가 최대한 큰 확대/축소 수준에서 지정된 크기의 경계 상자 내에서 화면 중앙에 오도록 카메라를 변환하는 CameraUpdate
를 반환합니다. 추가 패딩을 지정하여 경계 상자의 크기를 추가로 제한할 수 있습니다. 반환된 CameraUpdate
의 방위는 0이고 기울기는 0입니다.
인수가 경계 상자의 원하는 크기를 지정하므로 newLatLngBounds(LatLngBounds, int)
와 달리 이 메서드에서 반환하는 CameraUpdate
를 사용하여 지도의 레이아웃 단계 전에 카메라를 변경할 수 있습니다.
매개변수
bounds | 경계 상자에 맞출 영역입니다. |
---|---|
너비 | 경계 상자 너비 (픽셀) |
높이 | 경계 상자 높이 (픽셀) |
패딩 | 경계 상자의 추가 크기 제한 (픽셀) |
반환 값
- 변환이 포함된
CameraUpdate
.
공개 정적 CameraUpdate newLatLngBounds (LatLngBounds 경계, int 패딩)
지정된 위도/경도 경계가 가능한 가장 큰 확대/축소 수준에서
화면의 중앙에 오도록 카메라를 변환하는 CameraUpdate
를 반환합니다. 지도뷰의
가장자리에서 경계 상자를 인셋하기 위해 패딩을 지정할 수 있습니다. 반환된 CameraUpdate
의 방위는 0이고 기울기는 0입니다.
지도에서 레이아웃을 진행할 때까지는 이 카메라 업데이트로 카메라를 변경하지 마세요.
이 메서드가 적절한 경계 상자와 확대/축소 수준을 올바르게 판단하려면
지도에 크기가 있어야 합니다. 그러지 않으면 IllegalStateException
이 발생합니다. 지도를 사용할 수 있는 것만으로는 충분하지 않습니다. 지도를 포함하는 뷰도 크기가 결정되도록 레이아웃을 거쳐야 합니다. 이것이 발생했는지 확실하지 않으면 대신 newLatLngBounds(LatLngBounds, int, int, int)
를 사용하고 지도의 크기를 수동으로 제공하세요.
매개변수
bounds | 화면에 표시할 영역 |
---|---|
패딩 | 경계 상자 가장자리와 뷰 가장자리 사이에 남겨두는 공간 (픽셀)입니다. 이 값은 경계 상자의 네 면 모두에 적용됩니다. |
반환 값
- 변환이 포함된
CameraUpdate
.
공개 정적 CameraUpdate newLatLngZoom (LatLng latLng, 플로팅 확대/축소)
화면 중심을 LatLng
객체로 지정된 위도와 경도로 이동하고 지정된 확대/축소 수준으로 이동하는 CameraUpdate
를 반환합니다.
매개변수
latLng | 원하는 위도와 경도가 포함된 LatLng 객체 |
---|---|
줌 | 원하는 줌레벨(2.0~21.0)로 설정합니다. 이 범위 아래의 값은 2.0으로 설정되고 그보다 높은 값은 21.0으로 설정됩니다. 값을 늘리면 확대됩니다. 모든 영역에 가장 큰 확대/축소 수준의 타일이 있는 것은 아닙니다. |
반환 값
- 변환이 포함된
CameraUpdate
.
공개 정적 CameraUpdate scrollBy (float xPixel, float yPixel)
x 및 y 방향으로 지정된 픽셀 수만큼 시야의 중심을 이동하여 지도 위로 카메라를 스크롤하는 CameraUpdate
를 반환합니다.
예:
- xPixel = 5이고 yPixel = 0인 경우, 시스템은 지도가 왼쪽으로 5픽셀 이동한 것처럼 보이도록 카메라를 이동하여 오른쪽으로 스크롤합니다.
- xPixel = 0이고 yPixel = 5인 경우 지도가 위쪽으로 5픽셀 이동한 것처럼 보이도록 카메라를 이동하여 아래로 스크롤합니다.
스크롤은 카메라의 현재 방향에 따라 진행됩니다. 예를 들어 카메라의 방향이 90도라면 동쪽이 '위'이고 오른쪽으로 스크롤하면 카메라가 남쪽으로 이동합니다.
매개변수
xPixel | 가로로 스크롤할 픽셀 수입니다. 양수 값은 카메라가 현재 방향을 기준으로 오른쪽으로 이동합니다. 음수 값은 현재 방향을 기준으로 카메라를 왼쪽으로 이동합니다. |
---|---|
yPixel | 세로로 스크롤할 픽셀 수입니다. 양수 값은 현재 방향을 기준으로 카메라를 아래로 이동합니다. 음수 값은 현재 방향을 기준으로 카메라를 위로 이동합니다. |
반환 값
- 변환이 포함된
CameraUpdate
.
공개 정적 CameraUpdate zoomBy (부동 소수점 수, 포인트 포커스)
현재 카메라 시점의 확대/축소 수준을 이동하는 CameraUpdate
를 반환합니다.
초점으로 지정된 지점은 고정된 상태로 유지됩니다. 즉, 확대/축소 프로세스 전과 후에 동일한 위도/경도에 해당합니다.
이 메서드는 확대/축소가 현재 카메라를 기준으로 한다는 점에서 zoomTo(float)
와 다릅니다.
예를 들어 LatLng
(11.11, 22.22)가 현재 화면 위치 (23, 45)에 있는 경우입니다. 확대/축소 금액과 이 LatLng
를 사용하여 이 메서드를 호출한 후에도 이 LatLng
의 화면 위치는 여전히 (23, 45)입니다.
매개변수
amount | 크기를 변경할 수 있습니다. 양수 값은 지표면에 더 가깝게 확대/축소됨을 나타내고 음수 값은 지표면을 벗어나 확대/축소함을 나타냅니다. |
---|---|
초점 | 확대/축소 프로세스 후에 고정된 상태로 유지되는 화면의 픽셀 위치입니다. 카메라가 이동하기 전에 해당 픽셀 위치에 있던 위도/경도는 카메라가 이동된 후에도 동일하게 유지됩니다. |
반환 값
- 변환이 포함된
CameraUpdate
.
공개 정적 CameraUpdate zoomBy (부동 소수점 수)
현재 카메라 시점의 확대/축소 수준을 이동하는 CameraUpdate
를 반환합니다.
이 메서드는 확대/축소가 현재 카메라를 기준으로 한다는 점에서 zoomTo(float)
와 다릅니다.
매개변수
amount | 크기를 변경할 수 있습니다. 양수 값은 지표면에 더 가깝게 확대/축소됨을 나타내고 음수 값은 지표면을 벗어나 확대/축소함을 나타냅니다. |
---|
반환 값
- 변환이 포함된
CameraUpdate
.
공개 정적 CameraUpdate zoomIn ()
시점의 높이를 지면에 더 가깝게 이동하여 지도를 확대하는 CameraUpdate
를 반환합니다. 확대/축소 증가는 1.0입니다.
반환 값
- 변환이 포함된
CameraUpdate
.
공개 정적 CameraUpdate zoomOut ()
시점의 높이를 지면에서 더 멀리 이동하여 지도를 축소하는 CameraUpdate
를 반환합니다. 확대/축소 증가는 -1.0입니다.
반환 값
- 변환이 포함된
CameraUpdate
.
공개 정적 CameraUpdate zoomTo (부동 소수점 수 확대/축소)
카메라 시점을 특정 확대/축소 수준으로 이동하는 CameraUpdate
를 반환합니다.
매개변수
줌 | 원하는 줌레벨(2.0~21.0)로 설정합니다. 이 범위 아래의 값은 2.0으로 설정되고 그보다 높은 값은 21.0으로 설정됩니다. 값을 늘리면 확대됩니다. 모든 영역에 가장 큰 확대/축소 수준의 타일이 있는 것은 아닙니다. |
---|