區域疊加層

透過集合功能整理內容 你可以依據偏好儲存及分類內容。
公開最終類別 GroundOverlay 擴充物件

區域疊加層是指固定於地圖上的圖片。區域疊加層的屬性如下:

位置
有兩種方法可指定區域疊加層的位置:
  • 使用位置:您必須提供區域疊加層的圖片、固定錨點的 LatLng 以及疊加層的寬度 (單位為公尺)。根據預設,錨點距離圖片頂端 50% 和圖片左側 50%。這項設定無法變更。您也可以視情況提供疊加層的高度 (單位為公尺)。如未提供疊加層的高度,系統會自動計算並維持圖片比例。
  • 使用邊界:您必須提供包含圖片的 LatLngBounds
您必須指定區域疊加層的位置,才能將其加入地圖,否則當區域疊加層加入地圖時,系統將擲回 IllegalArgumentException。此外,您必須使用 GroundOverlayOptions 物件中的其中一種方法指定位置;否則在使用第二個方法指定時,系統會擲回 IllegalStateException
圖片
要用於此重疊的圖片。BitmapDescriptor系統會根據提供的位置縮放圖片。您必須先指定圖片,才能將區域疊加層加到地圖中;如未將 IllegalArgumentException 加入地圖,系統將擲回。
航向
圖片可順時針旋轉的角度。旋轉的中心是圖片的錨點。此為選用元素,預設航向為 0,即圖片會對齊北方。
zIndex
此區域疊加層相對於其他疊加層 (包括 PolylineTileOverlay,但不是 Marker) 的繪製順序。系統會將 zIndex 較大的疊加層繪製在 zIndex 較少的疊加層上。具有相同 ZIndex 值的疊加層順序為任意順序。這是選用項目,預設的 zIndex 值為 0。
透明度
區域疊加層的透明度在 [0..1] 範圍內,其中 0 表示疊加層不透明,1 表示疊加層完全透明。如果指定的點陣圖已經是部分透明的,則每個像素的透明度都會隨之調整 (例如,如果點陣圖中的像素的 Alpha 值是 200,而區域疊加層的透明度為 0.25,則像素會在螢幕上顯示 Alpha 值為 150)。此屬性的規格為選用項目,預設透明度為 0 (不透明)。
顯示設定
指出區域疊加層是否可見,即是否在地圖上繪製。系統不會繪製隱藏的區域疊加層,但會保留所有其他屬性。這是選用元素,預設的顯示設定為 true,也就是可見的項目。
可點擊性
如要處理使用者點選區域疊加層時觸發的事件,請將這個屬性設為 true。您隨時可以變更這個值。預設值為 false。如果這個屬性設為 true,應用程式將會收到透過 setOnGroundOverlayClickListener(GoogleMap.OnGroundOverlayClickListener) 註冊的 GoogleMap.OnGroundOverlayClickListener 通知。
標記
與區域疊加層相關聯的 Object。舉例來說,Object 可包含區域疊加層的代表資料。這種做法比儲存單獨的 Map<GroundOverlay, Object> 更輕鬆。另一個例子是,您可以將 String 對應的 ID 與資料集中的 ID 建立關聯。Google Maps SDK for Android 不會讀取或寫入這項屬性。

此類別的方法必須在 Android UI 執行緒上呼叫。否則,系統會在執行階段擲回 IllegalStateException

範例

GoogleMap map = ...; // get a map.
 BitmapDescriptor imageDescriptor = ...; // get an image.
 LatLngBounds bounds = ...; // get a bounds
 // Adds a ground overlay with 50% transparency.
 GroundOverlay groundOverlay = map.addGroundOverlay(new GroundOverlayOptions()
     .image(imageDescriptor)
     .positionFromBounds(bounds)
     .transparency(0.5));
 

公用方法摘要

布林
等於 (物件其他)
測試這個 GroundOverlay 是否等於另一個。
浮點值
getBearing()
從北方順時針旋轉地面疊加層的角度。
LatLngBounds
getBounds()
取得區域疊加層的邊界。
浮點值
getHeight()
取得區域疊加層的高度。
字串
getId()
取得此區域疊加層的 ID。
LatLng
getPosition()
取得錨點的位置。
物件
getTag()
取得圓形的標記。
浮點值
getTransparency()
取得此區域疊加層的透明度。
浮點值
getWidth()
取得區域疊加層的寬度。
浮點值
getZIndex()
取得此區域疊加層的 zIndex。
整數
布林
isClickable()
取得區域疊加層的可點擊屬性。
布林
isVisible()
取得此區域疊加層的顯示設定。
void
remove()
從地圖上移除此區域疊加層。
void
setBearing (浮點軸承)
設定區域疊加層的方位角度 (也就是區域疊加層的垂直軸方向,由北方順時針方向)。
void
setClickable(布林值可點擊)
設定區域疊加層的可點擊屬性。
void
setDimension (浮動寬度、浮點高度)
設定區域疊加層的尺寸。
void
setDimension(浮動寬度)
設定區域疊加層的寬度。
void
setImage(BitmapDescriptor imageDescriptor)
設定區域疊加層的圖片。
void
setPosition(LatLng latLng)
變更錨點的位置,設定區域疊加層的位置。
void
setPositionFromBounds(LatLngBounds 範圍)
將區域疊加層的指定調整至指定的 LatLngBounds 來設定位置。
void
setTag (物件標記)
設定區域疊加層的標記。
void
setTransparency(浮動透明度)
設定此區域疊加層的透明度。
void
setVisible (布林值顯示)
設定此區域疊加層的顯示設定。
void
setZIndex(浮動值 zIndex)
設定這個區域疊加層的 zIndex。

繼承方法摘要

公用方法

公開布林值 等於 (物件其他)

測試這個 GroundOverlay 是否等於另一個。

參數
其他 Object
傳回
  • 如果兩個物件都相同,則物件的值為 true,也就是其他值 ==。

public float getBearing ()

從北方順時針旋轉地面疊加層的角度。

傳回
  • 區域疊加層的航向。

public LatLngBoundsgetBounds()

取得區域疊加層的邊界。這會忽略區域疊加層的旋轉。

傳回

public float getHeight ()

取得區域疊加層的高度。

傳回
  • 區域疊加層的高度 (單位為公尺)。

public String getId ()

取得此區域疊加層的 ID。地圖中的所有 GroundOverlays 不得重複。

傳回
  • 此區域疊加層's 的 ID。

公開 LatLng getPosition ()

取得錨點的位置。

傳回
  • 地圖上的位置 (LatLng)。

public Object getTag ()

取得圓形的標記。

傳回
  • 如使用 setTag 設定標記,如未設定標記則傳回 null

public float getTransparency ()

取得此區域疊加層的透明度。

傳回
  • 此區域疊加層的透明度。

public float getWidth ()

取得區域疊加層的寬度。

傳回
  • 區域疊加層的寬度 (單位為公尺)。

public float getZIndex ()

取得此區域疊加層的 zIndex。

傳回
  • 區域疊加層的 zIndex。

public int hashCode ()

public 布林值 isClickable ()

取得區域疊加層的可點擊屬性。如果區域疊加層可供點擊,當使用者按一下區域疊加層時,您的應用程式就會收到 GoogleMap.OnGroundOverlayClickListener 的通知。事件監聽器是透過 setOnGroundOverlayClickListener(GoogleMap.OnGroundOverlayClickListener) 註冊。

傳回
  • true:如果區域疊加層可點擊,否則傳回 false

公開布林值 isVisible ()

取得此區域疊加層的顯示設定。請注意,這不會傳回區域疊加層是否實際在螢幕上,如果納入疊加層的可視區域中,則不會傳回。

傳回
  • 此區域疊加層的顯示設定。#39;

public 移除 ()

從地圖上移除此區域疊加層。移除區域疊加層後,所有方法的行為都不會定義。

public setBearing (浮動軸承)

設定區域疊加層的方位角度 (也就是區域疊加層的垂直軸方向,由北方順時針方向)。系統會對錨點執行旋轉。

參數
方位 以北方順時針角度旋轉

public setClickable (布林值可點擊)

設定區域疊加層的可點擊屬性。如果區域疊加層可供點擊,當使用者按一下區域疊加層時,您的應用程式就會收到 GoogleMap.OnGroundOverlayClickListener 的通知。事件監聽器是透過 setOnGroundOverlayClickListener(GoogleMap.OnGroundOverlayClickListener) 註冊。

參數
可點擊 區域疊加層的新可點擊設定。

public setDimension (浮動寬度、浮點高度)

設定區域疊加層的尺寸。圖片會延展至符合尺寸。

參數
寬度 寬度 (單位:公尺)
高度 高度 (以公尺為單位)

public setDimensions(浮點寬度)

設定區域疊加層的寬度。區域疊加層的高度將會隨之調整,以維持長寬比。

參數
寬度 寬度 (單位為公尺)

public setImage (BitmapDescriptor imageDescriptor)

設定區域疊加層的圖片。新圖片與原圖片的邊界相同。

參數
圖片描述元 用於此區域疊加層的 BitmapDescriptor

public setPosition (LatLng latLng)

變更錨點的位置,設定區域疊加層的位置。保留圖片的所有其他屬性。

參數
拉丁美洲 LatLng 是放置錨點的新位置。

public void setPositionFromBounds(LatLngBounds 邊界)

將區域疊加層的指定調整至指定的 LatLngBounds 來設定位置。這個方法在定位時,會忽略區域疊加層的旋轉 (航向),但繪製時仍會使用方位。

參數
邊界 LatLngBounds 用來放置區域疊加層的 LatLngBounds

public setTag (物件標記)

設定區域疊加層的標記。

您可以使用這個屬性將任意 Object 與此區域疊加層建立關聯。 舉例來說,Object 可包含區域疊加層代表的資料。這種做法比儲存單獨的 Map<GroundOverlay, Object> 更輕鬆。另一個例子是,您可以將 String 對應的 ID 與資料集中的 ID 建立關聯。Google Maps SDK for Android 不會讀取或寫入這項屬性。不再需要時,請呼叫 setTag(null) 清除標記,以免應用程式發生記憶體流失。

參數
標記 如果為空值,系統會清除標記。

public setTransparency (浮點透明度)

設定此區域疊加層的透明度。詳情請參閱這個類別頂端的說明文件。

參數
資訊公開 範圍為 [0..1] 的浮點,其中 0 表示區域疊加層不透明,1 代表區域疊加層為透明。

public setVisible (布林值顯示)

設定此區域疊加層的顯示設定。如果看不到,區域疊加層就不會繪製,但會保留所有其他屬性。

參數
顯示 如果為 true,則表示區域疊加層為可見;如果為 false,則為

public setZIndex(float zIndex)

設定這個區域疊加層的 zIndex。詳情請參閱這個類別頂端的說明文件。

參數
ZIndex 此區域疊加層的 zIndex