區域疊加層是指固定於地圖上的圖片。區域疊加層的屬性如下:
- 位置
- 有兩種方法可指定區域疊加層的位置:
- 使用位置:您必須提供區域疊加層的圖片、固定錨點的
LatLng
以及疊加層的寬度 (單位為公尺)。根據預設,錨點距離圖片頂端 50% 和圖片左側 50%。這項設定無法變更。您也可以視情況提供疊加層的高度 (單位為公尺)。如未提供疊加層的高度,系統會自動計算並維持圖片比例。 - 使用邊界:您必須提供包含圖片的
LatLngBounds
。
IllegalArgumentException
。此外,您必須使用GroundOverlayOptions
物件中的其中一種方法指定位置;否則在使用第二個方法指定時,系統會擲回IllegalStateException
。 - 使用位置:您必須提供區域疊加層的圖片、固定錨點的
- 圖片
- 要用於此重疊的圖片。
BitmapDescriptor
系統會根據提供的位置縮放圖片。您必須先指定圖片,才能將區域疊加層加到地圖中;如未將IllegalArgumentException
加入地圖,系統將擲回。 - 航向
- 圖片可順時針旋轉的角度。旋轉的中心是圖片的錨點。此為選用元素,預設航向為 0,即圖片會對齊北方。
- zIndex
- 此區域疊加層相對於其他疊加層 (包括
Polyline
和TileOverlay
,但不是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。
|
整數 |
hashCode()
|
布林 |
isClickable()
取得區域疊加層的可點擊屬性。
|
布林 |
isVisible()
取得此區域疊加層的顯示設定。
|
void |
remove()
從地圖上移除此區域疊加層。
|
void |
setBearing (浮點軸承)
設定區域疊加層的方位角度 (也就是區域疊加層的垂直軸方向,由北方順時針方向)。
|
void |
setClickable(布林值可點擊)
設定區域疊加層的可點擊屬性。
|
void |
setDimension (浮動寬度、浮點高度)
設定區域疊加層的尺寸。
|
void |
setDimension(浮動寬度)
設定區域疊加層的寬度。
|
void | |
void | |
void | |
void |
setTag (物件標記)
設定區域疊加層的標記。
|
void |
setTransparency(浮動透明度)
設定此區域疊加層的透明度。
|
void |
setVisible (布林值顯示)
設定此區域疊加層的顯示設定。
|
void |
setZIndex(浮動值 zIndex)
設定這個區域疊加層的 zIndex。
|
繼承方法摘要
公用方法
public float getBearing ()
從北方順時針旋轉地面疊加層的角度。
傳回
- 區域疊加層的航向。
public float getHeight ()
取得區域疊加層的高度。
傳回
- 區域疊加層的高度 (單位為公尺)。
public String getId ()
取得此區域疊加層的 ID。地圖中的所有 GroundOverlays 不得重複。
傳回
- 此區域疊加層's 的 ID。
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 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 |
---|