CameraUpdateFactory

公開最終課 CameraUpdateFactory 擴充物件

類別包含建立 CameraUpdate 物件的方法,可變更地圖的相機。 如要修改地圖的相機,請使用此類別建立的 CameraUpdate 物件呼叫 animateCamera(CameraUpdate)animateCamera(CameraUpdate, GoogleMap.CancelableCallback)moveCamera(CameraUpdate)

舉例來說,如要放大地圖,您可以使用下列程式碼:

GoogleMap map = ...;
 map.animateCamera(CameraUpdateFactory.zoomIn());
 

使用此類別中的任何方法前,您必須執行下列其中一項操作,以確保 這個類別已初始化:

開發人員指南

詳情請參閱攝影機和檢視畫面 開發人員指南

公用方法摘要

靜態 CameraUpdate
newCameraPosition(CameraPosition cameraPosition)
傳回將相機移至指定 CameraPositionCameraUpdate
靜態 CameraUpdate
newLatLng(LatLng latLng)
傳回將畫面中心移至經緯度的 CameraUpdateLatLng 物件指定。
靜態 CameraUpdate
newLatLngBounds(LatLngBounds 邊界、整數寬度、整數高度、整數邊框間距)
傳回 CameraUpdate,以轉換相機,進而達到指定的 經緯度邊界會置中於指定尺寸的邊框內。 在可能的縮放等級下
靜態 CameraUpdate
newLatLngBounds(LatLngBounds 邊界, int 填充)
傳回 CameraUpdate,以轉換相機,進而達到指定的 經緯度邊界會以最大可能的縮放等級置中顯示。
靜態 CameraUpdate
newLatLngZoom(LatLng latLng、浮點縮放)
傳回將畫面中心移至經緯度的 CameraUpdateLatLng 物件指定,並移至指定的縮放等級。
靜態 CameraUpdate
scrollBy(float xPixel, float yPixel)
傳回 CameraUpdate,這會將相機捲動在地圖上,同時移動 以 x 和 y 方向以像素為單位檢視。
靜態 CameraUpdate
zoomBy(浮點數、點焦點)
傳回 CameraUpdate,該物件會移動目前相機視角的縮放等級。
靜態 CameraUpdate
zoomBy(浮點數)
傳回 CameraUpdate,該物件會移動目前相機視角的縮放等級。
靜態 CameraUpdate
zoomIn()
傳回可放大地圖的 CameraUpdate,意即將視點的高度移動到更近的位置 地貌。
靜態 CameraUpdate
zoomOut()
傳回可移動視角的高度,在地圖上縮小的 CameraUpdate 可以遠離地表。
靜態 CameraUpdate
zoomTo(浮點縮放)
傳回將攝影機觀察點移至特定縮放等級的 CameraUpdate

繼承方法摘要

公用方法

公開 靜態 CameraUpdate newCameraPosition (CameraPosition 攝影機位置)

傳回將相機移至指定 CameraPositionCameraUpdate。於 效果會從 CameraPosition 物件的緯度建立轉換, 經度、縮放等級、方位和傾斜度。

參數
cameraPosition
傳回

公開 靜態 CameraUpdate newLatLng (LatLng latLng)

傳回將畫面中心移至經緯度的 CameraUpdateLatLng 物件指定。這會將相機置於 LatLng 物件上。

參數
latLng 包含所需經緯度的 LatLng 物件。
傳回

公開 靜態 CameraUpdate newLatLngBounds (LatLngBounds 邊界、整數寬度、英寸高度、整數邊框間距)

傳回 CameraUpdate,以轉換相機,進而達到指定的 經緯度邊界會置中於指定尺寸的邊框內。 在可能的縮放等級下您可以指定額外的邊框間距,進一步限制 也就是邊界方塊的大小傳回的 CameraUpdate 航向為 0,傾斜角度則為 0 值。

有別於 newLatLngBounds(LatLngBounds, int),您可以使用 CameraUpdate 此方法會在地圖的版面配置階段之前變更相機,因為 引數會指定定界框大小

參數
界限 要放入定界框的區域
寬度 定界框寬度 (像素)
高度 定界框高度 (像素)
padding 定界框的額外大小限制 (以 px 為單位)
傳回

公開 靜態 CameraUpdate newLatLngBounds (LatLngBounds 邊界、整數邊框間距)

傳回 CameraUpdate,以轉換相機,進而達到指定的 經緯度邊界會以最大可能的縮放等級置中顯示。你可以 指定邊框間距,以便從地圖檢視邊緣插入邊框。傳回的 CameraUpdate 的航向為 0,傾斜為 0。

除非地圖採用版面配置 ( 這個方法可以正確決定適當的定界框與縮放等級, 地圖必須設有大小)。否則系統會擲回 IllegalStateException。不應該 足以讓地圖使用包含地圖的檢視也必須具有 以便決定其尺寸如果無法確定 請改用 newLatLngBounds(LatLngBounds, int, int, int),並提供 手動調整地圖的尺寸

參數
界限 配合螢幕大小
padding 方框 (以 px 為單位) 可在定界框邊緣與檢視邊緣之間來回移動。這個 」值會套用到定界框的四個邊。
傳回

公開 靜態 CameraUpdate newLatLngZoom (LatLng latLng、浮點縮放)

傳回將畫面中心移至經緯度的 CameraUpdateLatLng 物件指定,並移至指定的縮放等級。

參數
latLng 包含所需經緯度的 LatLng 物件。
縮放 所需的縮放等級,範圍介於 2.0 到 21.0 之間。低於這個範圍的值為 設為 2.0,而高於這個上限的值則設為 21.0。增加值即可放大。並非 區域中,地圖方塊擁有最大的縮放等級。
傳回

公開 靜態 CameraUpdate scrollBy (浮動的 xPixel,浮動 yPixel)

傳回 CameraUpdate,這會將相機捲動在地圖上,同時移動 以 x 和 y 方向以像素為單位檢視。

範例:

  • 如果 xPixel = 5 且 yPixel = 0,則系統會移動相機,將鏡頭向右捲動 地圖似乎已從左側移動 5 個像素。
  • 如果 xPixel = 0,且 yPixel = 5,則系統會移動相機,向下捲動,讓 地圖似乎已從 5 像素向上移動。

滾動是相對於相機的當前方向。舉例來說,如果相機 航向 90 度,然後東為「向上」向右捲動則可將相機鏡頭往南移動

參數
xPixel 水平捲動的像素數量。正值將相機移至 以回應目前方向為準。負值會將攝影機移動到 左側,圖片則是以目前方向為準。
yPixel 垂直捲動的像素數量。正值會移動攝影機 依目前方向向下旋轉。負值會移動相機 從目前方向前進。
傳回

公開 靜態 CameraUpdate zoomBy (浮點值、聚焦焦點)

傳回 CameraUpdate,該物件會移動目前相機視角的縮放等級。

焦點所指定的點會保持固定 (亦即與兩者都對應到同一個經緯度)。 。

這個方法與 zoomTo(float) 的特定縮放等級 (相對於目前縮放等級) 相機上

舉例來說,如果 LatLng (11.11、22.22) 目前位於螢幕位置 (23、 45)。使用縮放等級和此 LatLng 呼叫此方法後,螢幕位置 此LatLng仍是 (23、45)。

參數
金額 則能變更縮放等級正值表示放大到 地表的值,而負值表示縮小地球的表面 地球。
焦點 像素位置在縮放後保持固定的螢幕上。 相機移動前,該像素位置的經緯度會維持不變 ,在相機移動後。
傳回

公開 靜態 CameraUpdate zoomBy (浮點值)

傳回 CameraUpdate,該物件會移動目前相機視角的縮放等級。

這個方法與 zoomTo(float) 的特定縮放等級 (相對於目前縮放等級) 相機上

參數
金額 則能變更縮放等級正值表示放大到 地表的值,而負值表示縮小地球的表面 地球。
傳回

公開 靜態 CameraUpdate zoomIn ()

傳回可放大地圖的 CameraUpdate,意即將視點的高度移動到更近的位置 地貌。縮放增量為 1.0。

傳回

公開 靜態 CameraUpdate zoomOut ()

傳回可移動視角的高度,在地圖上縮小的 CameraUpdate 可以遠離地表。縮放增量為 -1.0。

傳回

公開 靜態 CameraUpdate zoomTo (浮動縮放)

傳回將攝影機觀察點移至特定縮放等級的 CameraUpdate

參數
縮放 所需的縮放等級,範圍介於 2.0 到 21.0 之間。低於這個範圍的值為 設為 2.0,而高於這個上限的值則設為 21.0。增加值即可放大。並非 區域中,地圖方塊擁有最大的縮放等級。