AI
产品服务
解决方案
文档与支持
定价
更新时间: 2026-03-23 09:27:26
绘制点标记
下载开发文档

本章节将对点标记、添加Marker、绘制自定义Marker、Marker点击和拖拽操作、POI底图标注等做进一步说明。

点标记

点标记用来在地图上标记任何位置,例如用户位置、车辆位置、店铺位置等一切带有位置属性的事物。
地图 SDK 提供的点标记功能包含两大部分,一部分是点( Marker)同时,SDK 对 Marker 封装了大量的触发事件,例如点击事件、长按事件、拖拽事件。
由于内容丰富,以下只能展示一些基础功能的使用,详细内容可参考类参考文档。

添加Marker

开发者可以根据自己实际的业务需求,利用标注覆盖物,在地图指定的位置上添加标注信息。开发者通过BMFMarker类来设置Marker的属性。
绘制Marker的代码如下:

/// 创建BMFMarker
BMFMarker marker = BMFMarker(
position: BMFCoordinate(39.928617, 116.40329),
title: 'flutterMaker',
identifier: 'flutter_marker',
icon: 'resoures/icon_end.png');
/// 添加Marker
myMapController?.addMarker(marker);
dbj.jpg

BMFMarker包含多种可供设置的属性。常用属性如下:

名称说明

position

位置坐标

isLockedToScreen

标注是否固定在指定屏幕位置

screenPointToLock

标注锁定在屏幕上的位置

icon

marker图标

centerOffset

设置marker相对于坐标位置的偏移,目前Android只支持Y轴方向的偏移

enabled3D

3D效果(iOS独有)

enabled

是否处理事件

draggable

是否可拖拽

visible

Marker是否可见(Android独有)

zIndex

元素的堆叠顺序(Android独有)

可触发的Marker事件
Marker点击事件

点击Marker时会回调BaiduMap.OnMarkerClickListener,监听器的实现方式示例如下:

/// 地图marker点击回调
myMapController?.setMapClickedMarkerCallback(
callback: (BMFMarker marker) {
});
Marker拖拽事件

在拖拽Marker时会回调BaiduMap.OnMarkerDragListener,监听器的实现方式如下(要在构造MarkerOptions时开启draggable):

/// 拖拽marker点击回调
myMapController?.setMapDragMarkerCallback(
callback: (BMFMarker marker) {
});
Marker更新接口
名称说明

updateTitle

更新title

updateSubTitle

更新subTitle

updatePosition

更新位置经纬度

updateIsLockedToScreen

更新是否锁定在屏幕上的位置

updateIcon

更新显示的图片

updateCenterOffset

更新markercenterOffset信息

updateEnabled3D

更新marker是否显示3D效果

updateEnabled

更新marker是否响应触摸事件,true则响应,false则不响应

updateDraggable

更新是否可拖拽

updateScaleX

更新x方向缩放倍数,Android独有

updateScaleX

更新x方向缩放倍数,Android独有

updateScaleY

更新y方向缩放倍数,Android独有

updateAlpha

更新透明度,Android独有

updateIsPerspective

更新近大远小的开关,Android独有

updateVisible

更新marker是否显示,Android独有

updateZIndex

更新z轴方向上的堆叠顺序,Android独有

上一篇

绘制点聚合

下一篇

绘制线

本篇文章对您是否有帮助?