GoogleMap

公開最終類別 GoogleMap 擴充物件

這是 Google Maps SDK for Android 的主要類別,是與地圖相關的所有方法的進入點。您無法直接對 GoogleMap 物件執行個體化,而是必須從已新增至應用程式的 MapFragmentMapViewgetMapAsync() 方法取得物件。

注意:與 View 物件類似,GoogleMap 只能透過 Android UI 執行緒讀取及修改。從其他執行緒呼叫 GoogleMap 方法會導致例外狀況。

你可以調整相機的位置 (而不是移動地圖),調整地圖的視角。您可以使用地圖的相機來設定參數,例如位置、縮放等級、傾斜角度和航向。詳情請參閱相機和檢視畫面

開發人員指南

首先,請參閱 Google Maps SDK for Android 開發人員指南。

巢狀類別摘要

GoogleMap.CancelableCallback 用於在工作完成或取消時回報回呼介面。
GoogleMap.InfoWindowAdapter 提供自訂資訊視窗的檢視畫面。
GoogleMap.OnCameraChangeListener 這個介面已淘汰。 已由 GoogleMap.OnCameraMoveStartedListenerGoogleMap.OnCameraMoveListenerGoogleMap.OnCameraIdleListener 取代。系統會針對新相機變更事件監聽器的方法,淘汰已淘汰的 onCameraChange 方法順序。 
GoogleMap.OnCameraIdleListener 相機移動已結束的回呼介面。
GoogleMap.OnCameraMoveCanceledListener 回呼功能,說明相機動作停止或相機開始移動原因。
GoogleMap.OnCameraMoveListener 相機變更位置的回呼介面。
GoogleMap.OnCameraMoveStartedListener 相機動作開始時的回呼介面。
GoogleMap.OnCircleClickListener 使用者點選圓圈時的回呼介面。
GoogleMap.OnGroundOverlayClickListener 使用者點選區域疊加層時的回呼介面。
GoogleMap.OnIndoorStateChangeListener 室內狀態變更時的事件監聽器。
GoogleMap.OnInfoWindowClickListener 標記資訊視窗上的點擊/輕觸事件的回呼介面。
GoogleMap.OnInfoWindowCloseListener 標記資訊視窗的關閉事件回呼介面。
GoogleMap.OnInfoWindowLongClickListener 用於長按某個標記資訊視窗的回呼介面。
GoogleMap.OnMapClickListener 使用者輕觸地圖時的回呼介面。
GoogleMap.OnMapLoadedCallback 在地圖上完成算繪時的回呼介面。
GoogleMap.OnMapLongClickListener 使用者長按地圖時的回呼介面。
GoogleMap.OnMarkerClickListener 定義在點選或輕觸標記時呼叫的方法。
GoogleMap.OnMarkerDragListener 在標記上拖曳事件的回呼介面。
GoogleMap.OnMyLocationButtonClickListener 使用者點選「我的位置」按鈕時的回呼介面。
GoogleMap.OnMyLocationChangeListener 這個介面已淘汰。 請改用 com.google.android.gms.location.FusedLocationProviderApi。 FusedLocationProviderApi 提供更完善的定位尋找功能和用電量,供「我的位置」藍點使用。請參閱「選取目前的地點」教學課程 (使用 FusedLocationProviderApi 或位置開發人員指南)。 
GoogleMap.OnMyLocationClickListener 使用者點選「我的位置」點 (代表使用者位置) 時的回呼介面。
GoogleMap.OnPoiClickListener 搜尋點輕觸的事件監聽器。
GoogleMap.OnPolygonClickListener 使用者點選多邊形的回呼介面。
GoogleMap.OnPolylineClickListener 使用者點選折線的回呼介面。
GoogleMap.SnapshotReadyCallback 拍攝快照時通知的回呼介面。

常數摘要

int MAP_TYPE_HYBRID 衛星地圖,主要背景為主要街道。
int MAP_TYPE_NONE 沒有基本地圖圖塊。
int MAP_TYPE_NORMAL 基本地圖。
int MAP_TYPE_SATELLITE 不含標籤的衛星地圖。
int MAP_TYPE_TERRAIN 地形圖。

公用方法摘要

圓形
addCircle(CircleOptions 選項)
在地圖上新增圓形。
區域疊加層
addGroundOverlay(GroundOverlayOptions 選項)
在這個地圖上新增圖片。
標記
addMarker(MarkerOptions 選項)
在這個地圖中新增標記。
多邊形
addPolygon(PolygonOptions 選項)
在地圖上新增多邊形。
折線
addPolyline (PolylineOptions 選項)
在地圖上新增折線。
TileOverlay
addTileOverlay(TileOverlayOptions 選項)
在地圖上新增圖塊疊加層。
void
animateCamera(CameraUpdate更新)
將相機從目前位置移動至更新中定義的位置。
void
animateCamera(CameraUpdate 更新、GoogleMap.CancelableCallback 回呼)
將相機從目前位置移動至更新中定義的位置,並於結束時呼叫回呼。
void
animateCamera (CameraUpdate 更新、int durationMs、GoogleMap.CancelableCallback 回呼)
依照動畫更新,在指定的時間內移動地圖,並在完成時呼叫選用選用回呼。
void
clear()
從地圖中移除所有標記、折線、多邊形、疊加層等。
CameraPosition
getCameraPosition()
取得相機的目前位置。
室內建築物
getFocused Building()
取得目前聚焦的建築物。
整數
getGeo()
取得目前顯示的地圖類型。
浮點值
getMaxZoomLevel()
傳回目前相機位置的最大縮放等級。
浮點值
getMinZoomLevel()
傳回最小縮放等級。
位置
getMyLocation()
此方法已淘汰。 請改用 com.google.android.gms.location.FusedLocationProviderApi。 FusedLocationProviderApi 提供更完善的定位尋找功能和用電量,供「我的位置」藍點使用。如需範例程式碼,請參閱範例應用程式中的 MyLocationDemoActivity 或定位開發人員指南
投影
getProjection()
傳回 Projection 物件,您可以使用該物件在螢幕座標和緯度/經度座標之間進行轉換。
UiSettings
getUiSettings()
取得地圖的使用者介面設定。
布林
is BuildingsEnabled()
傳回是否啟用 3D 建築物圖層。
布林
isIndoorEnabled()
取得目前是否已啟用室內地圖。
布林
isMyLocationEnabled()
取得我的位置圖層的狀態。
布林
istrafficEnabled()
檢查地圖是否繪製了流量資料。
void
moveCamera(CameraUpdate更新)
根據更新中定義的指示重新調整相機位置。
void
resetMinMaxZoomPreference()
移除所有先前指定的上下縮放邊界。
void
set BuildingsEnabled(已啟用布林值)
開啟或關閉 3D 建築物圖層。
void
setContentDescription(字串說明)
設定地圖的 contentDescription。
布林
setIndoorEnabled(已啟用布林值)
設定是否應啟用室內地圖。
void
setInfoWindowAdapter (GoogleMap.InfoWindowAdapter 轉接程式)
為資訊視窗內容設定自訂轉譯器。
void
setLatLngBoundsForCameraTarget (LatLngBounds 邊界)
指定 LatLngBounds 限制於相機目標,因此當使用者捲動並平移地圖時,相機目標不會超出這些邊界。
void
setLocationSource(LocationSource來源)
取代我的位置位置圖層的位置來源。
布林
setMapStyle(MapStyleOptions 樣式)
設定基本地圖的樣式。
void
setGeo(整數類型)
設定要顯示的地圖圖塊類型。
void
setMaxZoomPreference (float maxZoomPreference)
設定相機縮放的首選上限。
void
setMinZoomPreference(float minZoomPreference)
設定相機縮放的下限。
void
setMyLocationEnabled (已啟用布林值)
啟用或停用我的位置圖層。
void
void
setOnCameraIdleListener(GoogleMap.OnCameraIdleListener 事件監聽器)
設定在相機動作結束時叫用的回呼。
void
setOnCameraMoveCanceledListener(GoogleMap.OnCameraMoveCanceledListener事件監聽器)
設定在新動態動畫停止或中斷相機動作時叫用的回呼。
void
setOnCameraMoveListener(GoogleMap.OnCameraMoveListener 事件監聽器)
設定在相機移動時重複叫用的回呼。
void
setOnCameraMoveStartedListener(GoogleMap.OnCameraMoveStartedListener 事件監聽器)
設定在相機開始移動或相機動作變更原因時叫用的回呼。
void
setOnCircleClickListener(GoogleMap.OnCircleClickListener 事件監聽器)
設定在點選圓形時叫用的回呼。
void
setOnGroundOverlayClickListener (GoogleMap.OnGroundOverlayClickListener 事件監聽器)
設定在按下區域疊加層時叫用的回呼。
void
setOnIndoorStateChangeListener(GoogleMap.OnIndoorStateChangeListener 事件監聽器)
設定或清除室內活動的監聽器。
void
setOnInfoWindowClickListener (GoogleMap.OnInfoWindowClickListener 事件監聽器)
設定在點選標記資訊視窗時叫用的回呼。
void
setOnInfoWindowCloseListener(GoogleMap.OnInfoWindowCloseListener 事件監聽器)
設定在標記資訊視窗關閉時叫用的回呼。
void
setOnInfoWindowLongClickListener (GoogleMap.OnInfoWindowLongClickListener 事件監聽器)
設定在長按標記資訊視窗時叫用的回呼。
void
setOnMapClickListener(GoogleMap.OnMapClickListener 事件監聽器)
設定在輕觸地圖時叫用的回呼。
void
setOnMapLoadedCallback (GoogleMap.OnMapLoadedCallback 回呼)
設定在地圖完成算繪時叫用的回呼。
void
setOnMapLongClickListener(GoogleMap.OnMapLongClickListener 事件監聽器)
設定在長按地圖時叫用的回呼。
void
setOnMarkerClickListener (GoogleMap.OnMarkerClickListener 事件監聽器)
設定在點選標記時叫用的回呼。
void
setOnMarkerDragListener(GoogleMap.OnMarkerDragListener事件監聽器)
設定在拖曳標記時叫用的回呼。
void
setOnMyLocationButtonClickListener(GoogleMap.OnMyLocationButtonClickListener 事件監聽器)
設定在「我的位置」按鈕點選時叫用的回呼。
void
setOnMyLocationChangeListener(GoogleMap.OnMyLocationChangeListener 事件監聽器)
此方法已淘汰。 請改用 com.google.android.gms.location.FusedLocationProviderApi。 FusedLocationProviderApi 提供更完善的定位尋找功能和用電量,供「我的位置」藍點使用。如需範例程式碼,請參閱範例應用程式中的 MyLocationDemoActivity 或定位開發人員指南
void
setOnMyLocationClickListener(GoogleMap.OnMyLocationClickListener 事件監聽器)
設定在點按「我的位置」點 (代表使用者位置) 時叫用的回呼。
void
setOnPoiClickListener (GoogleMap.OnPoiClickListener 事件監聽器)
設定監聽器,在點按或輕觸搜尋點時觸發。
void
setOnPolygonClickListener (GoogleMap.OnPolygonClickListener 事件監聽器)
設定在點按多邊形時叫用的回呼。
void
setOnPolylineClickListener(GoogleMap.OnPolylineClickListener 事件監聽器)
設定使用者點擊折線時叫用的回呼。
void
setPadding(int left、int top、tt right、int Under)
設定地圖上的邊框間距。
void
set TrafficEnabled(已啟用布林值)
開啟或關閉路況圖層。
void
snapshot (GoogleMap.SnapshotReadyCallback 回呼)
拍攝地圖快照。
void
snapshot(GoogleMap.SnapshotReadyCallback 回呼、點陣圖點陣圖)
拍攝地圖快照。
void
stopAnimation()
停止進行中的動畫動畫。

繼承方法摘要

常數

public static final int MAP_TYPE_HYBRID

衛星地圖,主要背景為主要街道。

常數值: 4

public static final int MAP_TYPE_NONE

沒有基本地圖圖塊。

常數值: 0

public static final int MAP_TYPE_NORMAL

基本地圖。

常數值: 1

public static final int MAP_TYPE_SATELLITE

不含標籤的衛星地圖。

常數值: 2

public static final int MAP_TYPE_TERRAIN

地形圖。

常數值: 3

公用方法

公開 圓形 addCircle (CircleOptions 選項)

在地圖上新增圓形。

參數
選項 決定圓形顯示方式的圓形選項物件
傳回
  • 新增至地圖的 Circle 物件

public GroundOverlay addGroundOverlay (GroundOverlayOptions 選項)

在這個地圖上新增圖片。

參數
選項 區域疊加層選項物件,定義疊加層的轉譯方式。選項必須指定圖片 (AnchoredBitmap) 和位置。
傳回
擲回
IllegalArgumentException 如果該選項中未指定圖片或位置。

public Marker addMarker (MarkerOptions選項)

在這個地圖中新增標記。

地圖的圖示會在地圖的位置顯示:Marker.position。您按一下標記後,相機就會對準標記。定義 Marker.title 後,地圖會顯示含有標記和程式碼片段的資訊方塊。如果可拖曳標記,請長按並拖曳標記。

參數
選項 定義標記轉譯方式的標記選項物件。
傳回

public Polygon 多邊形 addPolygon(PolygonOptions 選項)

在地圖上新增多邊形。

參數
選項 定義多邊形算繪方式的多邊形選項物件。
傳回
  • 新增至地圖的 Polygon 物件。

公開 Polyline addPolyline (PolylineOptions 選項)

在地圖上新增折線。

參數
選項 定義如何算繪折線的折線選項物件。
傳回
  • 新增至地圖的 Polyline 物件。

public TileOverlay addTileOverlay (TileOverlayOptions 選項)

在地圖上新增圖塊疊加層。詳情請參閱 TileOverlay

請注意,不同於其他疊加層,如果重新建立地圖,圖塊疊加層不會自動還原,且必須手動重新加入。

參數
選項 圖塊疊加層選項物件,用於定義疊加層的轉譯方式。您必須指定 TileProvider 選項,否則系統會擲回 IllegalArgumentException
傳回
擲回
IllegalArgumentException 如果未指定選項中的 TileProvider

public animateCamera (CameraUpdate 更新)

將相機從目前位置移動至更新中定義的位置。在動畫播放期間,呼叫 getCameraPosition() 會傳回相機的中間位置。

如需一系列更新,請參閱 CameraUpdateFactory

參數
update 要套用至相機的變更。

public animateCamera (CameraUpdate 更新、GoogleMap.CancelableCallback 回呼)

將相機從目前位置移動至更新中定義的位置,並於結束時呼叫回呼。如需一組更新,請參閱 CameraUpdateFactory

在動畫播放期間,呼叫 getCameraPosition() 會傳回相機的中間位置。

參數
update 要套用至相機的變更。
callback 動畫停止時,從 Android UI 執行緒叫用的回呼。如果動畫正常完成,系統會呼叫 onFinish();否則呼叫 onCancel()。請勿在 onCancel() 中更新相機或為其建立動畫。

public void animateCamera (CameraUpdate 更新、int durationMs、GoogleMap.CancelableCallback 回呼)

依照動畫更新,在指定的時間內移動地圖,並在完成時呼叫選用選用回呼。如需一組更新,請參閱 CameraUpdateFactory

如果在動畫期間呼叫 getCameraPosition(),系統會傳回相機目前的飛行位置。

參數
update
持續時間 (毫秒) 動畫的時間長度 (以毫秒為單位)。這個值必須是絕對正數,否則系統會擲回 IllegalArgumentException
callback 可選擇在動畫停止時透過 Android UI 執行緒通知的選用回呼。如果動畫因自然因素結束而停止,系統會向 onFinish() 發出回呼通知。如果動畫因後續的相機動作或使用者手勢中斷而停止,系統會呼叫 onCancel()。回呼不應嘗試在取消方法中移動或為相機加入動畫。如果回呼不需要,請保留為 null

public 清除 ()

從地圖中移除所有標記、折線、多邊形、疊加層等。

public CameraPosition getCameraPosition ()

取得相機的目前位置。

傳回的 CameraPosition 是目前位置的快照,不會在相機移動時自動更新。

如要進一步瞭解如何變更相機的位置,請參閱相機和檢視畫面

傳回
  • 相機的目前位置。

public Indoor Building getFocused Building ()

取得目前聚焦的建築物。

傳回
  • 目前聚焦的建築物;如未聚焦建築物,則為 null

public int getGeo ()

取得目前顯示的地圖類型。請參閱 MAP_TYPE_NORMALMAP_TYPE_SATELLITEMAP_TYPE_TERRAIN 瞭解可能的值。

傳回
  • 地圖類型。

public float getMaxZoomLevel ()

傳回目前相機位置的最大縮放等級。這麼做會考量使用者目前使用的地圖類型,例如衛星或地形的最高縮放等級可能低於基本地圖圖塊。

如要進一步瞭解如何變更相機的縮放等級,請參閱相機和檢視畫面

傳回
  • 目前相機位置的最大縮放等級。

public float getMinZoomLevel ()

傳回最小縮放等級。這點與所有地點相同 (最高縮放等級不同),但可能因裝置和地圖大小而異。

如要進一步瞭解如何變更相機的縮放等級,請參閱相機和檢視畫面

傳回
  • 可用的最小縮放等級。

public 位置 getMyLocation ()

此方法已淘汰。
請改用 com.google.android.gms.location.FusedLocationProviderApi。 FusedLocationProviderApi 提供更完善的定位尋找功能和用電量,供「我的位置」藍點使用。如需程式碼範例,請參閱 MyLocationDemoActivity 中的範例應用程式,或《定位開發人員指南》。

傳回目前顯示的使用者位置,如果沒有可用位置資料,則傳回「null」。

傳回
擲回
IllegalStateException 如果尚未啟用「我的位置」圖層

公開 投影 getProjection ()

傳回 Projection 物件,您可以使用該物件在螢幕座標和經緯度座標之間進行轉換。

傳回的 Projection 是目前投影的快照,不會隨著相機移動而自動更新。由於這項作業的成本高昂,因此每個畫面只能取得一次投影。Google 地圖採用麥卡托投影功能,以地理資料建立地圖,並將地圖上的點轉換成地理座標。

傳回

publicUiSettingsgetUiSettings()

取得地圖的使用者介面設定。

傳回

公開布林值 is BuildingsEnabled ()

傳回是否啟用 3D 建築物圖層。

傳回
  • 如果啟用建築物,則為 true;否則為 false

public 布林值 isIndoorEnabled ()

取得目前是否已啟用室內地圖。

傳回
  • 如果啟用室內地圖,請設為 true;如果停用室內地圖,則為 false

public 布林值 isMyLocationEnabled ()

取得我的位置圖層的狀態。

傳回
  • 如果已啟用我的位置圖層,則為 true;否則為 false

public 布林值 istrafficEnabled ()

檢查地圖是否繪製了流量資料。這取決於流量資料的可用性。

傳回
  • 如果已啟用流量資料,則為 true;否則為 false

public moveCamera (CameraUpdate 更新)

根據更新中定義的指示重新調整相機位置。移動作業會立即執行,後續的 getCameraPosition() 則會反映新位置。如需一組更新,請參閱 CameraUpdateFactory

參數
update 要套用至相機的變更。

public resetMinMaxZoomPreference ()

移除所有先前指定的上下縮放邊界。

public set BuildingsEnabled (已啟用布林值)

開啟或關閉 3D 建築物圖層。

參數
已啟用 true:即可啟用 3D 建築物圖層;如要停用 3D 建築物,請使用 false

public setContentDescription (字串說明)

設定地圖的 contentDescription。

用於在無障礙模式中提供地圖的語音說明。預設值為「Google 地圖」

參數
說明 要當做說明的字串。

公開布林值 setIndoorEnabled (已啟用布林值)

設定是否應啟用室內地圖。目前,室內地圖一次只能顯示一張地圖,根據預設,這是您新增至應用程式中的第一張地圖。如要在其他地圖上啟用室內地圖,您必須先在原始地圖上停用室內地圖。如果你在其他地圖上啟用室內地圖,若嘗試啟用室內地圖功能,便不會執行任何操作,否則會傳回 false。如果地圖未啟用室內功能,所有室內相關方法都會傳回 nullfalse

參數
已啟用 true嘗試啟用室內地圖;false 代表停用室內地圖。
傳回
  • 是否可啟用室內地圖。

public setInfoWindowAdapter (GoogleMap.InfoWindowAdapter 轉接程式)

為資訊視窗內容設定自訂轉譯器。

就像地圖的事件監聽器一樣,這個狀態不會與地圖序列化。如果重新建立地圖 (例如因設定變更而重新建立),您必須再次呼叫此方法才能保留自訂設定。

參數
變壓器 用於資訊視窗內容的轉接程式,或是用 null 在資訊視窗中使用預設內容轉譯。

public void setLatLngBoundsForCameraTarget(LatLngBounds 邊界)

指定用於限制相機目標的 LatLngBounds,因此當使用者捲動並平移地圖時,相機目標不會超出這些邊界。

將值設為 null 即可清除定界框。新的邊界會取代任何先前指定的定界框。

當 LatLngBounds 變更時,SDK 會視情況調整所有未來的相機更新,以遵循這些邊界。請注意,基於某些技術性考量,SDK 可能無法將相機目標嚴格於邊界內。例如,浮點精確度會四捨五入錯誤或縮放等級極低。

參數
邊界 限制相機目標的範圍。

public setLocationSource (LocationSource來源)

取代我的位置位置圖層的位置來源。

參數
source 在「我的位置」圖層中使用的位置來源。使用 null 即可使用預設位置來源。

public 布林值 setMapStyle (MapStyleOptions style)

設定基本地圖的樣式。

使用樣式選項,您可以將自訂樣式套用至地圖上的地圖項目和元素。 如需樣式定義詳細資料,請參閱 MapStyleOptions

設為 null 即可清除所有先前的自訂樣式。

參數
style
傳回
  • 如果樣式已成功剖析,則為 true;如果在 MapStyleOptions 中偵測到問題,則為 false,包括無法剖析的樣式 JSON、無法辨識的特徵類型、無法辨識的元素類型或無效的樣式工具鍵。如果傳回值為 false,目前的樣式會維持不變。

public setGeo (int type)

設定要顯示的地圖圖塊類型。允許的值如下:

參數
類型 要顯示的地圖類型,

public setMaxZoomPreference (float maxZoomPreference)

設定相機縮放的首選上限。

當最大縮放等級發生變更時,SDK 會視情況調整所有後續的相機更新,盡可能將上限提高。請注意,基於某些技術性考量,SDK 可能無法讓使用者放大地圖。舉例來說,衛星地圖或地形圖的最高縮放等級可能低於基本地圖圖塊。

SDK 解決了最小值和最大值中的任何衝突。如果您將最低縮放等級設為高於目前上限的縮放等級,SDK 會使用新的最小和最大最小值。如果將最大縮放等級設為低於最小值,SDK 會使用新的最大值和最小值。例如:假設目前最小縮放等級為 8,最大值為 14。然後將最大縮放等級設為 6。SDK 使用至少 6 的縮放比例和最大 6 的縮放比例。

參數
maxZoomPreference 偏好的上限。

public setMinZoomPreference (float minZoomPreference)

設定相機縮放的下限。

當最小縮放量改變時,SDK 會視情況調整所有後續的相機更新,以盡可能減少這個下限。請注意,基於某些技術性考量,SDK 可能無法讓使用者過度放大畫面。

SDK 解決了最小值和最大值中的任何衝突。如果您將最低縮放等級設為高於目前上限的縮放等級,SDK 會使用新的最小和最大最小值。如果將最大縮放等級設為低於最小值,SDK 會使用新的最大值和最小值。例如:假設目前最小縮放等級為 8,最大值為 14。然後將最小縮放等級設為 16。SDK 使用 16 的最小縮放比例和 16 的最大縮放等級。

參數
minZoomPreference 偏好的下限。

public setMyLocationEnabled (已啟用布林值)

啟用或停用我的位置圖層。

啟用定位功能且位置可用時,「我的位置」圖層會持續繪製使用者目前所在位置和航向的位置,並會顯示能讓使用者與其所在位置互動的使用者介面控制項 (例如啟用或停用其位置和方位的相機追蹤)。

如要使用 my-location-layer 功能,除非您已設定自訂位置來源,否則必須要求 ACCESS_COARSE_LOCATIONACCESS_FINE_LOCATION 權限。

如果您是透過 setLocationSource(LocationSource) 設定自訂位置來源,Google Maps SDK for Android 不會授予上述權限。不過,您仍須確保使用者已授予自訂位置來源所需的所有權限。

參數
已啟用 true可啟用;false 可停用。
擲回
SecurityException 位置存取權。

public setOnCameraChangeListener (GoogleMap.OnCameraChangeListener事件監聽器)

此方法已淘汰。
替換為 setOnCameraMoveStartedListener(GoogleMap.OnCameraMoveStartedListener)setOnCameraMoveListener(GoogleMap.OnCameraMoveListener)setOnCameraMoveCanceledListener(GoogleMap.OnCameraMoveCanceledListener)setOnCameraIdleListener(GoogleMap.OnCameraIdleListener)

設定在相機變更時叫用的回呼。

參數
事件監聽器 相機變更時叫用的回呼。如要取消設定回呼,請使用 null

public setOnCameraIdleListener (GoogleMap.OnCameraIdleListener 事件監聽器)

設定在相機動作結束時叫用的回呼。

參數
事件監聽器 系統叫用的回呼。如要取消設定回呼,請使用 null

public setOnCameraMoveCanceledListener (GoogleMap.OnCameraMoveCanceledListener事件監聽器)

設定在新動態動畫停止或中斷相機動作時叫用的回呼。

參數
事件監聽器 系統叫用的回呼。如要取消設定回呼,請使用 null。請勿在 onCameraMoveCanceled() 內更新或建立相機動畫。

public setOnCameraMoveListener (GoogleMap.OnCameraMoveListener事件監聽器)

設定在相機移動時重複叫用的回呼。回呼頻率會依每個頁框一次叫用,而且不應執行昂貴的作業。

參數
事件監聽器 系統叫用的回呼。如要取消設定回呼,請使用 null

public setOnCameraMoveStartedListener (GoogleMap.OnCameraMoveStartedListener 事件監聽器)

設定在相機開始移動或相機動作變更原因時叫用的回呼。

參數
事件監聽器 系統叫用的回呼。如要取消設定回呼,請使用 null。請勿在 onCameraMoveStarted() 內更新或建立相機動畫。

public setOnCircleClickListener (GoogleMap.OnCircleClickListenerListener)

設定在點選圓形時叫用的回呼。

參數
事件監聽器 使用者點選圓形時叫用的回呼。如要取消呼叫回呼,請使用 null

public setOnGroundOverlayClickListener (GoogleMap.OnGroundOverlayClickListener事件監聽器)

設定在按下區域疊加層時叫用的回呼。

參數
事件監聽器 使用者點選區域疊加層時叫用的回呼。如要取消呼叫回呼,請使用 null

public setOnIndoorStateChangeListener (GoogleMap.OnIndoorStateChangeListener 事件監聽器)

設定或清除室內活動的監聽器。只能設定一個事件監聽器。設定新的事件監聽器會移除先前的事件監聽器。

參數
事件監聽器 如果是非空值的室內事件事件監聽器,否則會清除事件監聽器

public setOnInfoWindowClickListener (GoogleMap.OnInfoWindowClickListener 事件監聽器)

設定在點選標記資訊視窗時叫用的回呼。

參數
事件監聽器 使用者點選標記資訊視窗時叫用的回呼。如要取消呼叫回呼,請使用 null

public setOnInfoWindowCloseListener(GoogleMap.OnInfoWindowCloseListener 事件監聽器)

設定在標記資訊視窗關閉時叫用的回呼。

參數
事件監聽器 在標記標記關閉時叫用的回呼。如要取消呼叫回呼,請使用 null

public setOnInfoWindowLongClickListener (GoogleMap.OnInfoWindowLongClickListener 事件監聽器)

設定在長按標記資訊視窗時叫用的回呼。

參數
事件監聽器 長按標記和資訊視窗的視窗時叫用的回呼。如要取消設定回呼,請使用 null

public setOnMapClickListener (GoogleMap.OnMapClickListener Listener)

設定在輕觸地圖時叫用的回呼。

參數
事件監聽器 地圖輕觸時叫用的回呼。如要取消呼叫回呼,請使用 null

public setOnMapLoadedCallback (GoogleMap.OnMapLoadedCallback 回呼)

設定在地圖完成算繪時叫用的回呼。回呼只會叫用一次。

如果在地圖完整轉譯時呼叫此方法,系統會立即叫用回呼。如果地圖因連線問題而無法載入,或是地圖持續變更且因為使用者持續與地圖互動而未完成載入,則不會觸發此事件。

參數
callback 地圖完成算繪時叫用的回呼。如要取消呼叫回呼,請使用 null

public setOnMapLongClickListener (GoogleMap.OnMapLongClickListener 事件監聽器)

設定在長按地圖時叫用的回呼。

參數
事件監聽器 長按地圖時叫用的回呼。如要取消呼叫回呼,請使用 null

public setOnMarkerClickListener (GoogleMap.OnMarkerClickListener 事件監聽器)

設定在點選標記時叫用的回呼。

參數
事件監聽器 使用者點按標記時叫用的回呼。如要取消呼叫回呼,請使用 null

public setOnMarkerDragListener (GoogleMap.OnMarkerDragListener事件監聽器)

設定在拖曳標記時叫用的回呼。

參數
事件監聽器 針對標記拖曳事件叫用的回呼。如要取消呼叫回呼,請使用 null

public setOnMyLocationButtonClickListener (GoogleMap.OnMyLocationButtonClickListener事件監聽器)

設定在「我的位置」按鈕點選時叫用的回呼。

如果 listener 傳回 true,系統就會消耗該事件,而不會產生預設行為。如果傳回 false,就會發生預設行為 (意即相機移動時,會置中於使用者的位置)。

參數
事件監聽器 使用者點選「我的位置」按鈕時叫用的回呼。

public setOnMyLocationChangeListener (GoogleMap.OnMyLocationChangeListener 事件監聽器)

此方法已淘汰。
請改用 com.google.android.gms.location.FusedLocationProviderApi。 FusedLocationProviderApi 提供更完善的定位尋找功能和用電量,供「我的位置」藍點使用。如需程式碼範例,請參閱 MyLocationDemoActivity 中的範例應用程式,或《定位開發人員指南》。

設定在「我的位置」點變更位置時叫用的回呼。

參數
事件監聽器 「我的位置」點變更時,系統會叫用的回呼。

public setOnMyLocationClickListener (GoogleMap.OnMyLocationClickListener事件監聽器)

設定在點按「我的位置」點 (代表使用者位置) 時叫用的回呼。

參數
事件監聽器 使用者點選「我的位置」點時叫用的回呼。

public setOnPoiClickListener (GoogleMap.OnPoiClickListener事件監聽器)

設定監聽器,在使用者點擊或輕觸搜尋點時觸發。

傳遞 null 即可清除事件監聽器。

參數
事件監聽器

public setOnPolygonClickListener (GoogleMap.OnPolygonClickListener Listener)

設定在點按多邊形時叫用的回呼。

參數
事件監聽器 使用者點擊多邊形時叫用的回呼。如要取消呼叫回呼,請使用 null

public setOnPolylineClickListener(GoogleMap.OnPolylineClickListener事件監聽器)

設定使用者點擊折線時叫用的回呼。

參數
事件監聽器 使用者點擊折線時叫用的回呼。如要取消呼叫回呼,請使用 null

public setPadding (int left、int top、int right、int Under)

設定地圖上的邊框間距。

這個方法可讓您定義地圖上的可見區域,以設定地圖四個邊緣邊緣的邊框間距,以向地圖指出這些邊緣的每個部分都會被遮蓋。地圖功能將調整為邊框間距。舉例來說,縮放控制項、指南針、版權聲明和 Google 標誌都會經過移動,以符合已定義的區域、攝影機的移動位置相對於可見區域的中心等。

參數
左側 要在地圖左側新增的邊框間距像素數。
上半局 要在地圖上新增的邊框間距像素數。
右側 要在地圖右側的邊框間距像素數。
下半局 地圖的底部邊框間距像素數。

public set TrafficEnabled (已啟用布林值)

開啟或關閉路況圖層。

參數
已啟用

public snapshot (GoogleMap.SnapshotReadyCallback 回呼)

拍攝地圖快照。

如果互動式地圖難以使用或無法使用,您可以使用應用程式中的快照。舉例來說,使用 snapshot() 方法產生的圖片可用於顯示應用程式中的地圖縮圖,或是通知中心的快照。

注意:地圖圖片不得傳輸到您的伺服器,或是透過應用程式以外的方式使用。如果需要將地圖傳送至其他應用程式或使用者,請傳送資料,讓客戶重新建構地圖 (而非快照)。

參數
callback 建立快照時叫用的回呼方法。

public snapshot (GoogleMap.SnapshotReadyCallback 回呼、點陣圖點陣圖)

拍攝地圖快照。

這個方法相當於 snapshot(SnapshotReadyCallback),但可讓您提供預先分配的 Bitmap。如果點陣圖與地圖的目前維度不相符,系統就會為符合地圖的尺寸分配其他點陣圖。

雖然在多數情況下,回呼方法傳遞的物件與參數中已指定的物件相同,但在某些情況下,傳回的物件可能會不同 (例如,檢視畫面的檢視畫面在快照實際變更時已改變尺寸)。因此,您應只信任回呼方法傳遞的點陣圖內容。

參數
callback 建立快照時叫用的回呼方法。
點陣圖 預先分配的點陣圖。如果為 null,運作方式則與 snapshot(SnapshotReadyCallback) 相同。

public stopAnimation ()

停止進行中的動畫動畫。呼叫方法時,相機會立即停止移動,並維持在這個位置。