概览
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: |
在点按某个地图注点后调用。 | |
(可为 null 的 UIView *) | - mapView:markerInfoWindow: |
在标记即将被选中时调用。如果该方法返回 UIView,则可提供用于该标记的可选自定义信息窗口。 | |
(可为 null 的 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 | |
willMove: | (BOOL) | 手势 | |
[optional] |
在地图上的镜头变化前调用,原因可能是手势或动画(例如,用户点按“我的位置”按钮),也可能是因镜头或图层上的零长度动画进行了显式更新。
- 参数:
-
mapView 点按的地图视图。 手势 如果为“是”,则是因为用户手势所致。
- (void) mapView: | (GMSMapView *) | mapView | |
dodChangeCameraPosition: | (GMSCameraPosition *) | position | |
[optional] |
在地图上执行任何动画或手势操作期间反复调用(或者,如果明确设置了镜头,则调用一次)。
并非所有中间摄像头位置都会调用此方法。系统始终会调用该方法来确定动画或手势的最终位置。
- (void) mapView: | (GMSMapView *) | mapView | |
idleAtCameraPosition: | (GMSCameraPosition *) | position | |
[optional] |
当地图变为空闲状态、所有未完成的手势或动画播放完毕之后(或已明确设置镜头之后)时调用。
- (void) mapView: | (GMSMapView *) | mapView | |
DodTapAtCoordinate: | (CLLocationCoordinate2D) | 坐标 | |
[optional] |
在特定坐标处执行点按手势后调用,但前提是未点按标记。
系统会在取消选择任何当前选定的标记(用于点按地图隐含操作)之前调用此方法。
- (void) mapView: | (GMSMapView *) | mapView | |
DodLongPressAtCoordinate: | (CLLocationCoordinate2D) | 坐标 | |
[optional] |
在特定坐标处执行长按手势后调用。
- 参数:
-
mapView 点按的地图视图。 坐标 点按的位置。
- (BOOL) mapView: | (GMSMapView *) | mapView | |
dodTapMarker: | (GMSMarker *) | marker | |
[optional] |
在点按标记后调用。
- 参数:
-
mapView 点按的地图视图。 标记 点按的标记。
- 返回:
- 如果此委托处理了点按事件(会阻止地图执行其默认选择行为),则为 YES;如果地图应继续执行其默认选择行为,则为 NO。
- (void) mapView: | (GMSMapView *) | mapView | |
DidTapInfoWindowOfMarker: | (GMSMarker *) | marker | |
[optional] |
在点按标记的信息窗口后调用。
- (void) mapView: | (GMSMapView *) | mapView | |
dodLongPressInfoWindowOfMarker: | (GMSMarker *) | marker | |
[optional] |
在长按标记的信息窗口后调用。
- (void) mapView: | (GMSMapView *) | mapView | |
DidTapOverlay: | (GMSOverlay *) | overlay | |
[optional] |
在点按叠加层后调用。
点按标记时不会调用此方法。
- 参数:
-
mapView 点按的地图视图。 叠加层 点按的叠加层。
- (void) mapView: | (GMSMapView *) | mapView | |
doTapPOIWithPlaceID: | (NSString *) | placeID | |
name: | (NSString *) | name | |
位置: | (CLLocationCoordinate2D) | location | |
[optional] |
在点按某个地图注点后调用。
- 参数:
-
mapView 点按的地图视图。 placeID 点按的地图注点的地点 ID。 name 点按的地图注点的名称。 个位置 点按的地图注点的位置。
- (nullable UIView *) mapView: | (GMSMapView *) | mapView | |
markInfoWindow: | (GMSMarker *) | marker | |
[optional] |
在标记即将被选中时调用。如果该方法返回 UIView,则可提供用于该标记的可选自定义信息窗口。
如果您在调用此方法后更改此视图,这些更改不一定会反映在呈现版本中。
返回的 UIView 在任一维度上的边界都不得超过 500 点。由于在任何时间都只会显示一个信息窗口,因此返回的视图可在其他信息窗口之间重复使用。
在此调用期间从地图中移除标记或更改地图的选定标记会导致出现未定义的行为。
- 返回:
- 指定标记的自定义信息窗口,默认为 nil
- (nullable UIView *) mapView: | (GMSMapView *) | mapView | |
markInfoContents: | (GMSMarker *) | marker | |
[optional] |
在 mapView:markerInfoWindow: 返回 nil 时调用。
如果此方法返回一个视图,则会将其置于默认信息窗口框架中。如果此方法返回 nil,则改用默认呈现。
- 参数:
-
mapView 按下的地图视图。 标记 按下的标记。
- 返回:
- 在信息窗口中显示为内容的自定义视图,或为 nil,以使用默认的内容呈现方式
- (void) mapView: | (GMSMapView *) | mapView | |
dodCloseInfoWindowOfMarker: | (GMSMarker *) | marker | |
[optional] |
在标记的信息窗口关闭时调用。
- (void) mapView: | (GMSMapView *) | mapView | |
DodBeginDraggingMarker: | (GMSMarker *) | marker | |
[optional] |
在标记上启动拖动操作时调用。
- (void) mapView: | (GMSMapView *) | mapView | |
dodEndDraggingMarker: | (GMSMarker *) | marker | |
[optional] |
在标记拖动结束之后调用。
- (void) mapView: | (GMSMapView *) | mapView | |
dodDragMarker: | (GMSMarker *) | marker | |
[optional] |
会在拖动标记时调用。
- (BOOL) didTapMyLocationButtonForMapView: | (GMSMapView *) | mapView | [optional] |
在点按“我的位置”按钮时调用。
- 返回:
- 如果监听器使用了事件(即不应发生默认行为),则为 YES,否则为 NO(即应该发生默认行为)。默认行为是让相机以设备位置为中心进行移动。
- (void) mapView: | (GMSMapView *) | mapView | |
ddTapMyLocation: | (CLLocationCoordinate2D) | location | |
[optional] |
在点按“我的位置”圆点时调用。
- 参数:
-
mapView 点按的地图视图。 个位置 点按位置点时设备所在的位置。
- (void) mapViewDidStartTileRendering: | (GMSMapView *) | mapView | [optional] |
当刚刚请求图块或标签刚刚开始渲染时调用。
- (void) mapViewDidFinishTileRendering: | (GMSMapView *) | mapView | [optional] |
当所有图块均已加载(或永久失败)且标签已渲染时调用。
- (void) mapViewSnapshotReady: | (GMSMapView *) | mapView | [optional] |
在地图稳定(已加载图块、已渲染标签、相机空闲)且叠加层对象已渲染时调用。
- (void) mapView: | (GMSMapView *) | mapView | |
dodChangeMapCapabilities: | (GMSMapCapabilityFlags) | mapCapabilities | |
[optional] |
每次地图功能发生更改时调用。
- 参数:
-
mapView 更改了 mapCapabilities 的地图视图。 mapCapabilities 表示地图上当前功能的标志。
- (void) mapView: | (GMSMapView *) | mapView | |
doitTapFeatures: | (NSArray< id< GMSFeature >> *) | 功能 | |
inFeatureLayer: | (GMSFeatureLayer *) | featureLayer | |
atLocation: | (CLLocationCoordinate2D) | location | |
[optional] |
在点按数据驱动型样式地图项图层中的地图项后调用。
与点按点重叠的所有地图项都将包含在内。如果地图项属于不同的地图项图层,系统会多次调用此方法(针对每个地图项图层调用一次)。
不保证不同地图项图层上的事件或地图项图层上的事件与基本地图上的其他实体之间的事件顺序。
- 参数:
-
mapView 点按的地图视图。 功能 在图层中点击的所有地图项的数组。 featureLayer 包含相应功能的地图项图层。 个位置 实际点按点的位置。