總覽
上事件的委派GMSMapView 。
公開成員函式 | |
(void) | - mapView:willMove: |
在地圖相機變更之前呼叫,可能是由於手勢、動畫 (例如使用者輕觸「我的位置」按鈕) 或透過相機明確更新,或在圖層上的零長度動畫上更新呼叫。 | |
(void) | - mapView:didChangeCameraPosition: |
在地圖上任何動畫或手勢期間重複呼叫 (如果相機已明確設定,則呼叫一次)。 | |
(void) | - mapView:idleAtCameraPosition: |
地圖閒置時,於任何待處理的手勢或動畫完成 (或已經明確設定相機) 之後呼叫。 | |
(void) | - mapView:didTapAtCoordinate: |
在特定座標的輕觸手勢之後呼叫,但前提是未輕觸標記。 | |
(void) | - mapView:didLongPressAtCoordinate: |
在特定座標上長按手勢後呼叫。 | |
(BOOL) | - mapView:didTapMarker: |
在輕觸標記後呼叫。 | |
(void) | - mapView:didTapInfoWindowOfMarker: |
在使用者輕觸標記的資訊視窗之後,會呼叫此方法。 | |
(void) | - mapView:didLongPressInfoWindowOfMarker: |
在長按標記資訊視窗後呼叫。 | |
(void) | - mapView:didTapOverlay: |
使用者輕觸疊加層後,會呼叫此方法。 | |
(void) | - mapView:didTapPOIWithPlaceID:name:location: |
在輕觸搜尋點後呼叫。 | |
(可為空值的 UIView *) | - mapView:markerInfoWindow: |
在標記即將選取時呼叫,並提供選用的自訂資訊視窗 (如果這個方法傳回 UIView)。 | |
(可為空值的 UIView *) | - mapView:markerInfoContents: |
mapView:markerInfoWindow: 傳回 nil 時呼叫。 | |
(void) | - mapView:didCloseInfoWindowOfMarker: |
標記的資訊視窗關閉時,會呼叫此方法。 | |
(void) | - mapView:didBeginDraggingMarker: |
在標記上開始拖曳時呼叫。 | |
(void) | - mapView:didEndDraggingMarker: |
在拖曳標記結束之後呼叫。 | |
(void) | - mapView:didDragMarker: |
在拖曳標記時呼叫。 | |
(BOOL) | - didTapMyLocationButtonForMapView: |
在輕觸「我的位置」按鈕時呼叫。 | |
(void) | - mapView:didTapMyLocation: |
在輕觸「我的位置」點時呼叫。 | |
(void) | - mapViewDidStartTileRendering: |
當剛要求圖塊或標籤才開始算繪時,會呼叫此方法。 | |
(void) | - mapViewDidFinishTileRendering: |
所有圖塊都載入 (或永久失敗) 及標籤轉譯完畢時,會呼叫此方法。 | |
(void) | - mapViewSnapshotReady: |
地圖穩定 (載入方塊、已轉譯的標籤、相機閒置) 和疊加層物件轉譯時,會呼叫此方法。 | |
(void) | - mapView:didChangeMapCapabilities: |
每次地圖功能變更時呼叫。 | |
(void) | - mapView:didTapFeatures:inFeatureLayer:atLocation: |
在輕觸資料導向樣式地圖項目圖層中的地圖項目後,會呼叫。 |
成員函式說明文件
- (void) mapView: | (GMSMapView *) | mapView | |
將: | (BOOL) | gesture | |
[optional] |
在地圖相機變更之前呼叫,可能是由於手勢、動畫 (例如使用者輕觸「我的位置」按鈕) 或透過相機明確更新,或在圖層上的零長度動畫上更新呼叫。
- 參數:
-
mapView 使用者輕觸的地圖檢視。 手勢 如果答案為「是」,表示網頁會使用使用者手勢。
- (void) mapView: | (GMSMapView *) | mapView | |
hasChangeCameraPosition: | (GMSCameraPosition *) | position | |
[optional] |
在地圖上任何動畫或手勢期間重複呼叫 (如果相機已明確設定,則呼叫一次)。
可能不會為所有中繼相機位置呼叫此方法。動畫或手勢的最終位置一律呼叫此方法。
- (void) mapView: | (GMSMapView *) | mapView | |
BatteryAtCameraPosition: | (GMSCameraPosition *) | position | |
[optional] |
地圖閒置時,於任何待處理的手勢或動畫完成 (或已經明確設定相機) 之後呼叫。
- (void) mapView: | (GMSMapView *) | mapView | |
hasTapAtCoordinate: | (CLLocationCoordinate2D) | Coordinate | |
[optional] |
在特定座標的輕觸手勢之後呼叫,但前提是未輕觸標記。
在取消選取目前選取的任何標記 (輕觸地圖上的隱含動作) 之前,會呼叫此方法。
- (void) mapView: | (GMSMapView *) | mapView | |
doLongPressAtCoordinate: | (CLLocationCoordinate2D) | Coordinate | |
[optional] |
在特定座標上長按手勢後呼叫。
- 參數:
-
mapView 使用者輕觸的地圖檢視。 座標 使用者輕觸的位置。
- (BOOL) mapView: | (GMSMapView *) | mapView | |
hasTapMarker: | (GMSMarker *) | marker | |
[optional] |
在輕觸標記後呼叫。
- 參數:
-
mapView 使用者輕觸的地圖檢視。 馬克筆 輕觸的標記。
- 傳回:
- 是,如果這個委派代表處理了輕觸事件,導致地圖無法執行預設選取行為,如果地圖應繼續執行預設的選取行為,則為 NO。
- (void) mapView: | (GMSMapView *) | mapView | |
hasTapInfoWindowOfMarker: | (GMSMarker *) | marker | |
[optional] |
在使用者輕觸標記的資訊視窗之後,會呼叫此方法。
- (void) mapView: | (GMSMapView *) | mapView | |
doLongPressInfoWindowOfMarker: | (GMSMarker *) | marker | |
[optional] |
在長按標記資訊視窗後呼叫。
- (void) mapView: | (GMSMapView *) | mapView | |
doTapOverlay: | (GMSOverlay *) | overlay | |
[optional] |
使用者輕觸疊加層後,會呼叫此方法。
輕觸標記上的輕觸不會呼叫此方法。
- 參數:
-
mapView 使用者輕觸的地圖檢視。 overlay 輕觸的疊加層。
- (void) mapView: | (GMSMapView *) | mapView | |
hasTapPOIWithPlaceID | (NSString *) | placeID | |
name: | (NSString *) | name | |
位置: | (CLLocationCoordinate2D) | location | |
[optional] |
在輕觸搜尋點後呼叫。
- 參數:
-
mapView 使用者輕觸的地圖檢視。 placeID 所輕觸搜尋點的 placeID。 名稱 已輕觸的搜尋點名稱。 位置 所輕觸搜尋點的位置。
- (nullable UIView *) mapView: | (GMSMapView *) | mapView | |
tagInfoWindow: | (GMSMarker *) | marker | |
[optional] |
在標記即將選取時呼叫,並提供選用的自訂資訊視窗 (如果這個方法傳回 UIView)。
如果在呼叫此方法後變更這個檢視畫面,這些變更不一定會反映在轉譯後的版本。
傳回的 UIView 上任一維度的邊界不得超過 500 點。由於系統隨時只會顯示一個資訊視窗,因此傳回的檢視畫面可重複用於其他資訊視窗。
在此呼叫期間移除地圖中的標記或變更地圖的所選標記,會產生未定義的行為。
- 傳回:
- 指定標記的自訂資訊視窗,nil 代表預設標記
- (nullable UIView *) mapView: | (GMSMapView *) | mapView | |
tagInfoContents: | (GMSMarker *) | marker | |
[optional] |
mapView:markerInfoWindow: 傳回 nil 時呼叫。
如果這個方法傳回檢視畫面,會置於預設資訊視窗頁框中。如果這個方法傳回 nil,則系統會改用預設呈現方式。
- 參數:
-
mapView 已按下的地圖檢視。 馬克筆 已按下的標記。
- 傳回:
- 在資訊視窗中顯示為內容的自訂檢視畫面,或改為使用預設內容轉譯
- (void) mapView: | (GMSMapView *) | mapView | |
hasCloseInfoWindowOfMarker: | (GMSMarker *) | marker | |
[optional] |
標記的資訊視窗關閉時,會呼叫此方法。
- (void) mapView: | (GMSMapView *) | mapView | |
hasBeginDraggingMarker: | (GMSMarker *) | marker | |
[optional] |
在標記上開始拖曳時呼叫。
- (void) mapView: | (GMSMapView *) | mapView | |
doEndDraggingMarker: | (GMSMarker *) | marker | |
[optional] |
在拖曳標記結束之後呼叫。
- (void) mapView: | (GMSMapView *) | mapView | |
doDragMarker: | (GMSMarker *) | marker | |
[optional] |
在拖曳標記時呼叫。
- (BOOL) didTapMyLocationButtonForMapView: | (GMSMapView *) | mapView | [optional] |
在輕觸「我的位置」按鈕時呼叫。
- 傳回:
- 是,如果事件監聽器取用了事件 (意即不應發生預設行為),否則就「否」表示「否」(即應發生預設行為)。預設行為是讓攝影機移動到裝置位置的中心。
- (void) mapView: | (GMSMapView *) | mapView | |
hasTapMyLocation: | (CLLocationCoordinate2D) | location | |
[optional] |
在輕觸「我的位置」點時呼叫。
- 參數:
-
mapView 使用者輕觸的地圖檢視。 位置 使用者輕觸位置圓點時的裝置位置。
- (void) mapViewDidStartTileRendering: | (GMSMapView *) | mapView | [optional] |
當剛要求圖塊或標籤才開始算繪時,會呼叫此方法。
- (void) mapViewDidFinishTileRendering: | (GMSMapView *) | mapView | [optional] |
所有圖塊都載入 (或永久失敗) 及標籤轉譯完畢時,會呼叫此方法。
- (void) mapViewSnapshotReady: | (GMSMapView *) | mapView | [optional] |
地圖穩定 (載入方塊、已轉譯的標籤、相機閒置) 和疊加層物件轉譯時,會呼叫此方法。
- (void) mapView: | (GMSMapView *) | mapView | |
hasChangeMapCapabilities: | (GMSMapCapabilityFlags) | mapCapabilities | |
[optional] |
每次地圖功能變更時呼叫。
- 參數:
-
mapView 變更 mapCapabilities 的地圖檢視。 mapCapabilities 代表地圖上目前功能的旗標。
- (void) mapView: | (GMSMapView *) | mapView | |
hasTapFeatures: | (NSArray< id< GMSFeature >> *) | 功能 | |
inFeatureLayer: | (GMSFeatureLayer *) | featureLayer | |
位置: | (CLLocationCoordinate2D) | location | |
[optional] |
在輕觸資料導向樣式地圖項目圖層中的地圖項目後,會呼叫。
系統會移除所有與輕觸點重疊的功能。如果地圖項目屬於不同的地圖項目圖層,系統會多次呼叫這個方法 (每個地圖項目圖層一次)。
在不同的地圖項目圖層上,或在地圖項目圖層和其他實體上的事件之間,不保證會依序進行順序。
- 參數:
-
mapView 使用者輕觸的地圖檢視。 功能 圖層中點擊的所有地圖項目陣列。 featureLayer 包含該項功能的地圖項目圖層。 位置 實際輕觸點的位置。