這是 Google Maps SDK for Android 的主要類別,也是所有地圖相關方法的進入點。您無法直接對 GoogleMap
物件執行個體化,而是必須在已加入應用程式的 MapFragment
或 MapView
上,透過 getMapAsync()
方法取得一個物件。
注意:與 View
物件類似,GoogleMap
只能透過 Android UI 執行緒讀取及修改。從其他執行緒呼叫 GoogleMap
方法會導致例外狀況。
您可以改變攝影機的位置 (而不是移動地圖),藉此調整地圖的視角。您可以使用地圖的相機設定位置、縮放等級、傾斜角度和方位等參數。詳情請參閱「相機和檢視畫面」。
開發人員指南
如要開始使用,請參閱「Google Maps SDK for Android 」開發人員指南。
巢狀類別摘要
常數摘要
int | MAP_TYPE_HYBRID | 包含主要街道透明圖層的衛星地圖。 |
int | MAP_TYPE_NONE | 沒有基本地圖圖塊。 |
int | MAP_TYPE_NORMAL | 基本地圖。 |
int | MAP_TYPE_SATELLITE | 沒有標籤的衛星地圖。 |
int | MAP_TYPE_TERRAIN | 地形地圖。 |
公用方法摘要
圓形 | |
GroundOverlay | |
標記 | |
多邊形 | |
折線 | |
TileOverlay | |
void | |
void | |
void |
animateCamera(CameraUpdate 更新、 intDurationMs、GoogleMap.CancelableCallback 回呼)
根據含有動畫的更新在指定時間內移動地圖,並在完成時呼叫選用的回呼。
|
void |
clear()
從地圖移除所有標記、折線、多邊形、疊加層等。
|
CameraPosition |
getCameraPosition()
取得相機的目前位置。
|
IndoorBuilding |
getFocusedBuilding()
取得目前聚焦的建築物。
|
int |
getMapType()
取得目前顯示的地圖類型。
|
浮點值 |
getMaxZoomLevel()
傳回目前相機位置的最大縮放等級。
|
浮點值 |
getMinZoomLevel()
傳回最小縮放等級。
|
位置 |
getMyLocation()
此方法已淘汰。請改用 com.google.android.gms.location.FusedLocationProviderApi。
FusedLocationProviderApi 提供更好的位置尋找機制和耗電量,並搭配「我的位置」藍點使用。如需範例程式碼,請參閱範例應用程式資料夾中 MyLocationDemoActivity,或參閱「位置開發人員指南」。
|
投影 |
getProjection()
傳回
Projection 物件,可用於在螢幕座標和經緯度座標之間進行轉換。 |
UiSettings |
getUiSettings()
取得地圖的使用者介面設定。
|
布林值 |
isBuildingsEnabled()
傳回是否要啟用 3D 建築物圖層。
|
布林值 |
isIndoorEnabled()
指出目前是否啟用室內地圖。
|
布林值 |
isMyLocationEnabled()
取得我的位置圖層的狀態。
|
布林值 |
isTrafficEnabled()
檢查地圖是否正在繪製交通資料。
|
void | |
void |
resetMinMaxZoomPreference()
移除所有之前指定的上限和下限。
|
void |
setBuildingsEnabled(已啟用布林值)
開啟或關閉 3D 建築物圖層。
|
void |
setContentDescription(字串說明)
設定地圖的 contentDescription。
|
布林值 |
setIndoorEnabled(已啟用布林值)
設定是否應啟用室內地圖。
|
void | |
void |
setLatLngBoundsForCameraTarget(LatLngBounds 範圍)
指定用來限制攝影機目標的 LatLngBounds,藉此讓使用者捲動及平移地圖時,攝影機目標不會在這些邊界外移動。
|
void | |
布林值 | |
void |
setMapType(int type)
設定應顯示的地圖圖塊類型。
|
void |
setMaxZoomPreference(float maxZoomPreference)
設定相機縮放的建議上限。
|
void |
setMinZoomPreference(float minZoomPreference)
設定相機縮放的建議下限。
|
void |
setMyLocationEnabled(已啟用布林值)
啟用或停用我的位置圖層。
|
void | |
void | |
void |
setOnCameraMoveCanceledListener(GoogleMap.OnCameraMoveCanceledListener事件監聽器)
設定新的回呼類型停止或中斷相機動作時叫用的回呼。
|
void | |
void |
setOnCameraMoveStartedListener(GoogleMap.OnCameraMoveStartedListener事件監聽器)
設定當相機開始移動或相機動作原因發生變更時叫用的回呼。
|
void | |
void | |
void | |
void | |
void | |
void | |
void | |
void | |
void | |
void | |
void | |
void |
setOnMyLocationButtonClickListener(GoogleMap.OnMyLocationButtonClickListener 事件監聽器)
設定使用者按下我的位置按鈕時叫用的回呼。
|
void |
setOnMyLocationChangeListener(GoogleMap.OnMyLocationChangeListener 事件監聽器)
此方法已淘汰。請改用 com.google.android.gms.location.FusedLocationProviderApi。
FusedLocationProviderApi 提供更好的位置尋找機制和耗電量,並搭配「我的位置」藍點使用。如需範例程式碼,請參閱範例應用程式資料夾中 MyLocationDemoActivity,或參閱「位置開發人員指南」。
|
void |
setOnMyLocationClickListener(GoogleMap.OnMyLocationClickListener 事件監聽器)
設定按一下「我的位置」點 (代表使用者位置) 時叫用的回呼。
|
void | |
void | |
void | |
void |
setPadding(int left、intt top、Intright、Intbottom)
設定地圖上的邊框間距。
|
void |
setTrafficEnabled(已啟用布林值)
開啟或關閉車流量圖層。
|
void | |
void | |
void |
stopAnimation()
停止有進行中的相機動畫。
|
繼承方法摘要
常數
公開靜態最終 int MAP_TYPE_HYBRID
包含主要街道透明圖層的衛星地圖。
公開靜態最終 int MAP_TYPE_NONE
沒有基本地圖圖塊。
公開靜態最終 int MAP_TYPE_NORMAL
基本地圖。
公開靜態最終 int MAP_TYPE_SATELLITE
沒有標籤的衛星地圖。
公開靜態最終 int MAP_TYPE_TERRAIN
地形地圖。
公用方法
public GroundOverlay addGroundOverlay (GroundOverlayOptions 選項)
在此地圖中加入圖片。
參數
選項 | 區域疊加層選項物件,定義如何算繪疊加層。選項必須指定圖片 (AnchoredBitmap) 和位置。 |
---|
傳回
- 已新增至地圖的
GroundOverlay
。
擲回
IllegalArgumentException | 。 |
---|
公開 Marker addMarker (MarkerOptions選項)
在這張地圖中加入標記。
標記的圖示會顯示在地圖上的位置 Marker.position 位置。按一下標記,即可將攝影機置於標記中心。如果已定義 Marker.title,地圖會顯示含有標記標題和摘要的資訊方塊。如果是可拖曳的標記,請長按標記再拖曳標記。
參數
選項 | 可定義標記呈現方式的標記選項物件。 |
---|
傳回
- 已新增至地圖的
Marker
。
公開 Polygon addPolygon (PolygonOptions 選項)
在此地圖中加入多邊形。
參數
選項 | 可定義如何算繪多邊形的多邊形選項物件。 |
---|
傳回
- 加入地圖的
Polygon
物件。
公用 Polyline addPolyline (PolylineOptions 選項)
將折線加入此地圖。
參數
選項 | 定義折線算繪方式的折線選項物件。 |
---|
傳回
- 已新增至地圖的
Polyline
物件。
public TileOverlay addTileOverlay (TileOverlayOptions 選項)
在此地圖中新增圖塊疊加層。詳情請參閱 TileOverlay
。
請注意,不同於其他疊加層,如果重新建立地圖,圖塊疊加層不會自動還原,必須手動重新加入。
參數
選項 | 圖塊疊加層選項物件,定義如何算繪疊加層。選項必須指定 TileProvider ,否則系統會擲回 IllegalArgumentException 。 |
---|
傳回
- 已新增至地圖的
TileOverlay
。
擲回
IllegalArgumentException | 如未在選項中指定 TileProvider 。 |
---|
public void animateCamera (CameraUpdate 更新)
為攝影機從目前位置到更新中定義的位置建立動畫效果。在動畫播放期間,對 getCameraPosition()
的呼叫會傳回攝影機的中繼位置。
如需一系列更新內容,請參閱 CameraUpdateFactory
。
參數
update | 要套用至相機的變更。 |
---|
public void animateCamera (CameraUpdate 更新、GoogleMap.CancelableCallback 回呼)
以動畫方式呈現相機從目前位置到更新中定義的位置,並在完成時呼叫選用的回呼。如需一系列更新,請參閱 CameraUpdateFactory
。
在動畫播放期間,對 getCameraPosition()
的呼叫會傳回攝影機的中繼位置。
參數
update | 要套用至相機的變更。 |
---|---|
回呼 | 當動畫停止時,從 Android UI 執行緒叫用的回呼。如果動畫正常結束,系統會呼叫 onFinish() ;否則會呼叫 onCancel() 。請勿從 onCancel() 中更新或加入動畫效果。 |
public void animateCamera (CameraUpdate 更新、 int 持續時間 Ms、GoogleMap.CancelableCallback 回呼)
根據含有動畫的更新在指定時間內移動地圖,並在完成時呼叫選用的回呼。如需一系列更新,請參閱 CameraUpdateFactory
。
如果在動畫期間呼叫 getCameraPosition()
,則會傳回攝影機目前在飛行中的位置。
參數
update | |
---|---|
durationMs | 動畫的時間長度 (以毫秒為單位)。這個值必須為正數,否則系統會擲回 IllegalArgumentException 。
|
回呼 | 在動畫停止時,接收 Android UI 執行緒通知的選用回呼。如果動畫因自然播放結束而停止,系統會透過 onFinish() 通知回呼。如果之後的攝影機動作或使用者手勢造成動畫停止,系統會呼叫 onCancel() 。回呼不應嘗試以取消方法移動或為相機建立動畫。如果不需要回呼,請保留為 null 。 |
public void clear ()
從地圖移除所有標記、折線、多邊形、疊加層等。
public int getMapType ()
取得目前顯示的地圖類型。如要查看可能的值,請參閱 MAP_TYPE_NORMAL
、MAP_TYPE_SATELLITE
和 MAP_TYPE_TERRAIN
。
傳回
- 地圖類型。
public float getMaxZoomLevel ()
傳回目前相機位置的最大縮放等級。系統會考量目前使用的地圖類型,例如衛星或地形提供的最高縮放等級可能低於基本地圖圖塊。
如要進一步瞭解如何變更相機的縮放等級,請參閱「相機和檢視畫面」。
傳回
- 目前相機位置可用的最高縮放等級。
public float getMinZoomLevel ()
傳回最小縮放等級。每個位置都是相同的 (最高縮放等級),但不同裝置和地圖大小都可能不同。
如要進一步瞭解如何變更相機的縮放等級,請參閱「相機和檢視畫面」。
傳回
- 可用的最小縮放等級。
public Location getMyLocation ()
這個方法已淘汰。
請改用 com.google.android.gms.location.FusedLocationProviderApi。
FusedLocationProviderApi 提供更好的位置尋找機制和耗電量,並搭配「我的位置」藍點使用。如需範例程式碼,請參閱範例應用程式資料夾中 MyLocationDemoActivity,或參閱「位置開發人員指南」。
傳回目前顯示的使用者位置;如果沒有位置資料,則傳回 null
。
傳回
- 目前顯示的
user location
。
擲回
IllegalStateException | 則會傳回「my-location」圖層。 |
---|
公開 投影 getProjection ()
傳回 Projection
物件,可用於在螢幕座標和經緯度座標之間進行轉換。
傳回的 Projection
是目前投影的快照,不會在攝影機移動時自動更新。由於這項作業的費用較高,因此每個畫面只應取得一次投影。Google 地圖採用麥卡托投影,先根據地理資料建立地圖,再將地圖上的點轉換為地理座標。
傳回
- 地圖的
Projection
目前狀態。
公開布林值 isBuildingsEnabled ()
傳回是否要啟用 3D 建築物圖層。
傳回
- 如果已啟用建築物,則為
true
;否則為false
。
public 布林值 isIndoorEnabled ()
指出目前是否啟用室內地圖。
傳回
- 如果已啟用室內地圖,則為
true
;如果停用室內地圖,則為false
;
public 布林值 isMyLocationEnabled ()
取得我的位置圖層的狀態。
傳回
- 如果「my-location」圖層已啟用,則為
true
,否則傳回false
。
public 布林值 isTrafficEnabled ()
檢查地圖是否正在繪製交通資料。這取決於可用性資料。
傳回
- 如果已啟用車流量資料,則為
true
;否則為false
。
public void moveCamera (CameraUpdate 更新)
根據更新中所定義的指示調整相機位置。系統會立即移動,而後續的 getCameraPosition()
將反映新位置。如需一系列最新資訊,請參閱 CameraUpdateFactory
。
參數
update | 要套用至相機的變更。 |
---|
public void resetMinMaxZoomPreference ()
移除所有之前指定的上限和下限。
public void setBuildingsEnabled (boolean enabled)
開啟或關閉 3D 建築物圖層。
參數
已啟用 | true 可啟用 3D 建築物圖層,false 可停用 3D 建築物。
|
---|
public void setContentDescription (字串說明)
設定地圖的 contentDescription。
用於在無障礙模式中提供地圖的語音說明。預設值是「Google 地圖」
參數
description | 做為說明的字串。 |
---|
公開布林值 setIndoorEnabled (boolean enabled)
設定是否應啟用室內地圖。室內地圖目前一次只能在一張地圖上顯示。根據預設,這是第一張加到您應用程式中的地圖。如要在其他地圖上啟用室內地圖,您必須先停用原始地圖上的室內地圖。如果您在其他地圖啟用室內地圖時嘗試啟用該功能,就不會有任何反應,因而會傳回 false
。如果地圖未啟用室內功能,所有與室內相關的方法都會傳回 null
或 false
。
參數
已啟用 | true 嘗試啟用室內地圖;false 可停用室內地圖。 |
---|
傳回
- 能否啟用室內地圖。
public void setInfoWindowAdapter (GoogleMap.InfoWindowAdapter 轉接程式)
為資訊視窗的內容設定自訂轉譯器。
如同地圖的事件監聽器,此狀態不會與地圖序列化。如果重新建立地圖 (例如因為設定變更),請務必再次呼叫這個方法,才能保留自訂設定。
參數
轉接器 | 用於資訊視窗內容的轉接程式,或 null 以便在資訊視窗中使用預設內容算繪。 |
---|
public void setLatLngBoundsForCameraTarget (LatLngBounds 範圍)
指定用來限制攝影機目標的 LatLngBounds,如此一來,當使用者捲動及平移地圖時,攝影機目標就不會從這些邊界外移動。
如要完全清除定界框,請將值設為 null。新的邊界會取代所有先前指定的定界框。
當 LatLngBounds 變更時,SDK 會盡可能根據這些邊界調整所有後續相機更新。請注意,基於某些技術性考量,SDK 可能無法將攝影機目標嚴格控制在邊界內。例如浮點精確度捨入錯誤,或縮放等級非常低。
參數
邊界 | 限制相機目標的邊界。 |
---|
public void setLocationSource (LocationSource 來源)
取代我的位置圖層的位置來源。
參數
來源 | 要在「我的位置」圖層中使用的位置來源。如要使用預設位置來源,請將值設為 null 。 |
---|
public 布林值 setMapStyle (MapStyleOptions 樣式)
參數
樣式 |
---|
傳回
- 如果成功剖析樣式,則為
true
;如果透過MapStyleOptions
偵測到問題 (包括 JSON 樣式無法剖析、地圖項目類型無法辨識、元素類型無法辨識,或是樣式工具鍵無效),則為false
。如果傳回值為false
,則目前的樣式會維持不變。
public void setMapType (int type)
設定應顯示的地圖圖塊類型。可使用的值如下:
MAP_TYPE_NORMAL
:基本地圖。MAP_TYPE_SATELLITE
:衛星圖像。MAP_TYPE_HYBRID
:含有道路和標籤的衛星圖像。MAP_TYPE_TERRAIN
:地形資料。MAP_TYPE_NONE
:沒有基本地圖圖塊。
參數
類型 | 要顯示的地圖類型。 |
---|
public void setMaxZoomPreference (float maxZoomPreference)
設定相機縮放的建議上限。
當最大縮放等級變更時,SDK 會盡可能按照該上限調整所有後續相機更新。請注意,基於某些技術性考量,SDK 可能無法讓使用者深入放大地圖。舉例來說,衛星地圖或地形圖的最高縮放等級可能低於基本地圖圖塊。
SDK 會解決最小值和最大值的任何衝突。如果您將最小縮放等級設為高於目前上限的縮放等級,SDK 就會使用新的最小和最大縮放等級。如果您將最大縮放等級設為低於最低縮放等級,SDK 就會針對最小和最大值使用新的最大值。例如:假設目前的最小縮放等級是 8,最大值為 14。然後將最大縮放等級設為 6。SDK 至少需要 6 倍和最大縮放等級 6。
參數
maxZoomPreference | 偏好的上限。 |
---|
public void setMinZoomPreference (float minZoomPreference)
設定相機縮放所需的下限。
當最小縮放等級變更時,SDK 會盡可能調整所有之後的相機更新,以採用該最小縮放等級。請注意,基於某些技術性考量,SDK 可能無法讓使用者縮放畫面過低。
SDK 會解決最小值和最大值的任何衝突。如果您將最小縮放等級設為高於目前上限的縮放等級,SDK 就會使用新的最小和最大縮放等級。如果您將最大縮放等級設為低於最低縮放等級,SDK 就會針對最小和最大值使用新的最大值。例如:假設目前的最小縮放等級是 8,最大值為 14。然後將最小縮放等級設為 16。SDK 至少採用 16 倍和最大縮放等級 16。
參數
minZoomPreference | 偏好的下限。 |
---|
public void setMyLocationEnabled (boolean enabled)
啟用或停用「我的位置」圖層。
啟用或停用位置資訊後,我的位置圖層會持續繪製指出使用者目前位置和方位的指標,並顯示 UI 控制項,讓使用者與自己的位置互動,例如啟用或停用其位置和方位的攝影機追蹤功能。
如要使用「我的位置」圖層功能,除非您已設定自訂位置來源,否則必須要求 ACCESS_COARSE_LOCATION
或 ACCESS_FINE_LOCATION
的權限。
如果您已透過 setLocationSource(LocationSource)
設定自訂位置來源,Google Maps SDK for Android 不會檢查是否已授予上述權限。然而,您仍須確保使用者已授予自訂位置來源所需的所有權限。
參數
已啟用 | true 即可啟用,false 即可停用。 |
---|
擲回
SecurityException | 如果未授予位置存取權。 |
---|
public void setOnCameraChangeListener (GoogleMap.OnCameraChangeListener事件監聽器)
此方法已淘汰。
已由 setOnCameraMoveStartedListener(GoogleMap.OnCameraMoveStartedListener)
、setOnCameraMoveListener(GoogleMap.OnCameraMoveListener)
、setOnCameraMoveCanceledListener(GoogleMap.OnCameraMoveCanceledListener)
和 setOnCameraIdleListener(GoogleMap.OnCameraIdleListener)
取代。
設定相機變更時叫用的回呼。
參數
事件監聽器 | 相機變更時叫用的回呼。如要取消設定回呼,請使用 null 。 |
---|
public void setOnCameraIdleListener (GoogleMap.OnCameraIdleListener事件監聽器)
設定相機動作結束時叫用的回呼。
參數
事件監聽器 | 叫用的回呼。如要取消設定回呼,請使用 null 。 |
---|
public void setOnCameraMoveCanceledListener (GoogleMap.OnCameraMoveCanceledListener事件監聽器)
設定新的回呼類型停止或中斷相機動作時叫用的回呼。
參數
事件監聽器 | 叫用的回呼。如要取消設定回呼,請使用 null 。請勿從 onCameraMoveCanceled() 中更新或加入動畫效果的相機。 |
---|
public void setOnCameraMoveListener (GoogleMap.OnCameraMoveListener事件監聽器)
設定相機在移動時重複叫用的回呼。回呼只能以每個影格一次的頻率叫用,而且不應執行昂貴的作業。
參數
事件監聽器 | 叫用的回呼。如要取消設定回呼,請使用 null 。 |
---|
public void setOnCameraMoveStartedListener (GoogleMap.OnCameraMoveStartedListener事件監聽器)
設定當相機開始移動或相機動作原因發生變更時叫用的回呼。
參數
事件監聽器 | 叫用的回呼。如要取消設定回呼,請使用 null 。請勿從 onCameraMoveStarted() 中更新或加入動畫效果的相機。 |
---|
public void setOnCircleClickListener (GoogleMap.OnCircleClickListener 事件監聽器)
設定點選圓形時叫用的回呼。
參數
事件監聽器 | 點選圓形時叫用的回呼。如要取消設定回呼,請使用 null 。 |
---|
public void setOnGroundOverlayClickListener (GoogleMap.OnGroundOverlayClickListener事件監聽器)
設定按一下區域疊加層時叫用的回呼。
參數
事件監聽器 | 點選區域疊加層時叫用的回呼。如要取消設定回呼,請使用 null 。 |
---|
public void setOnIndoorStateChangeListener (GoogleMap.OnIndoorStateChangeListener 事件監聽器)
設定或清除室內事件的監聽器。只能設定一個事件監聽器。設定新的事件監聽器會移除先前的事件監聽器。
參數
事件監聽器 | 室內事件的事件監聽器 (非空值時);否則,請清除監聽器 |
---|
public void setOnInfoWindowClickListener (GoogleMap.OnInfoWindowClickListener事件監聽器)
設定按一下標記資訊視窗時要叫用的回呼。
參數
事件監聽器 | 按下標記資訊視窗時叫用的回呼。如要取消設定回呼,請使用 null 。 |
---|
public void setOnInfoWindowCloseListener (GoogleMap.OnInfoWindowCloseListener事件監聽器)
設定當標記資訊視窗關閉時,要叫用的回呼。
參數
事件監聽器 | 標記資訊視窗關閉時,會叫用的回呼。如要取消設定回呼,請使用 null 。 |
---|
public void setOnInfoWindowLongClickListener (GoogleMap.OnInfoWindowLongClickListener事件監聽器)
設定長按標記資訊視窗時要叫用的回呼。
參數
事件監聽器 | 長按標記資訊視窗時叫用的回呼。如要取消設定回呼,請使用 null 。 |
---|
public void setOnMapClickListener (GoogleMap.OnMapClickListener事件監聽器)
設定使用者輕觸地圖時叫用的回呼。
參數
事件監聽器 | 使用者輕觸地圖時叫用的回呼。如要取消設定回呼,請使用 null 。 |
---|
public void setOnMapLoadedCallback (GoogleMap.OnMapLoadedCallback 回呼)
設定此地圖完成算繪時,所呼叫的回呼。回呼只會叫用一次。
如果在地圖完整算繪後呼叫此方法,系統會立即叫用回呼。如果地圖因連線問題而一直無法載入,或是地圖不斷變更且因使用者持續與地圖互動而從未完成載入,則不會觸發這個事件。
參數
回呼 | 地圖完成算繪時叫用的回呼。如要取消設定回呼,請使用 null 。 |
---|
public void setOnMapLongClickListener (GoogleMap.OnMapLongClickListener事件監聽器)
設定長按地圖時叫用的回呼。
參數
事件監聽器 | 長按地圖時叫用的回呼。如要取消設定回呼,請使用 null 。 |
---|
public void setOnMarkerClickListener (GoogleMap.OnMarkerClickListener事件監聽器)
設定按一下標記時叫用的回呼。
參數
事件監聽器 | 點選標記時叫用的回呼。如要取消設定回呼,請使用 null 。 |
---|
public void setOnMarkerDragListener (GoogleMap.OnMarkerDragListener事件監聽器)
設定拖曳標記時叫用的回呼。
參數
事件監聽器 | 在標記拖曳事件上叫用的回呼。如要取消設定回呼,請使用 null 。 |
---|
public void setOnMyLocationButtonClickListener (GoogleMap.OnMyLocationButtonClickListener 事件監聽器)
設定使用者按下我的位置按鈕時叫用的回呼。
如果 listener
傳回 true
,系統就會取用該事件,而不會發生預設行為。如果傳回 false
,就會發生預設行為 (即攝影機移動,以使用者的位置為中心)。
參數
事件監聽器 | 按下「我的位置」按鈕時叫用的回呼。 |
---|
public void setOnMyLocationChangeListener (GoogleMap.OnMyLocationChangeListener 事件監聽器)
這個方法已淘汰。
請改用 com.google.android.gms.location.FusedLocationProviderApi。
FusedLocationProviderApi 提供更好的位置尋找機制和耗電量,並搭配「我的位置」藍點使用。如需範例程式碼,請參閱範例應用程式資料夾中 MyLocationDemoActivity,或參閱「位置開發人員指南」。
設定當「我的位置」點變更位置時叫用的回呼。
參數
事件監聽器 | 當「我的位置」點變更時叫用的回呼。 |
---|
public void setOnMyLocationClickListener (GoogleMap.OnMyLocationClickListener 事件監聽器)
設定按一下「我的位置」點 (代表使用者位置) 時叫用的回呼。
參數
事件監聽器 | 按一下「我的位置」點時叫用的回呼。 |
---|
public void setOnPoiClickListener (GoogleMap.OnPoiClickListener事件監聽器)
設定事件監聽器,在點擊或輕觸搜尋點時觸發。
傳遞 null
以清除事件監聽器。
參數
事件監聽器 |
---|
public void setOnPolygonClickListener (GoogleMap.OnPolygonClickListener 事件監聽器)
設定按一下多邊形時叫用的回呼。
參數
事件監聽器 | 點擊多邊形時叫用的回呼。如要取消設定回呼,請使用 null 。 |
---|
public void setOnPolylineClickListener (GoogleMap.OnPolylineClickListener事件監聽器)
設定點選折線時叫用的回呼。
參數
事件監聽器 | 按下折線時叫用的回呼。如要取消設定回呼,請使用 null 。 |
---|
public void setPadding (int left, int top, int right, int bottom)
設定地圖上的邊框間距。
這個方法可讓您定義地圖上的可見區域,讓地圖在邊緣周圍設定邊框間距,即可指出地圖邊緣的部分可能會遭到遮蔽。地圖函式會根據邊框間距進行調整。舉例來說,縮放控制項、指南針、版權通知和 Google 標誌將移動至定義的區域內,攝影機動作將根據可見區域的中心位置調整。
參數
左 | 地圖左側要加入邊框間距的像素數量。 |
---|---|
上 | 要在地圖上加入邊框間距的像素數量 |
右 | 在地圖右側加入邊框間距的像素數量。 |
下 | 地圖底部要加入邊框間距的像素數量。 |
public void setTrafficEnabled (boolean enabled)
開啟或關閉車流量圖層。
參數
已啟用 |
---|
public void snapshot (GoogleMap.SnapshotReadyCallback 回呼)
拍攝地圖快照。
當互動式地圖難以或無法使用時,您可以在應用程式中使用快照。舉例來說,使用 snapshot()
方法產生的圖片可用來在應用程式中顯示地圖縮圖,或在通知中心顯示快照。
注意:地圖圖片不得傳輸至您的伺服器,或在應用程式外用於其他用途。如果您需要將地圖傳送至其他應用程式或使用者,請傳送資料,讓他們為新使用者重新建構地圖 (而非快照)。
參數
回呼 | 拍攝快照時叫用的回呼方法。 |
---|
public void snapshot (GoogleMap.SnapshotReadyCallback 回呼、點陣圖點陣圖)
拍攝地圖快照。
這個方法相當於 snapshot(SnapshotReadyCallback)
,但可讓您提供預先分配的 Bitmap
。如果點陣圖與目前的地圖尺寸不符,系統會分配另一個符合地圖尺寸的點陣圖。
雖然在大多數情況下,回呼方法傳遞的物件與此方法中所提供的物件相同,但在某些情況下,傳回的物件可能會不同 (例如,如果檢視畫面的尺寸在快照實際拍攝時變更)。因此,您應該只信任回呼方法傳遞的點陣圖內容。
參數
回呼 | 拍攝快照時叫用的回呼方法。 |
---|---|
點陣圖 | 預先分配的點陣圖。如果為 null ,則行為與 snapshot(SnapshotReadyCallback) 類似。 |
public void stopAnimation ()
停止有進行中的相機動畫。呼叫此方法時,相機會立即停止移動,並保持在該位置。