全部服务产品
开发者频道
定价
登录
地图控件
下载开发文档

地图控件主要包括:缩放控件、比例尺控件、定位控件和地图审图控件。

地图控件采用鸿蒙emitter事件机制进行控制,emit数据结构如下:

{
data:{
mapViewId: string, // 地图标识
x: number, // x方向距离
y: number, // y方向距离
Alignment: Alignment, // 对齐方式
show: boolean // 是否显示
}
}

相关引入如下:

import { Event as EmitEvent } from '@bdmap/map';
import emitter from '@ohos.events.emitter';
显示隐藏设置

通过data的show和mapViewId字段进行控制。

MapComponent({ onReady: async (err, mapController) => {
if (!err) {
// 获取地图的控制器类,用来操作地图
this.mapController = mapController;
emitter.emit({ eventId: EmitEvent.LocationCom }, {
data: {
show: true,
mapViewId: this.mapController?.mapViewId
}
})
emitter.emit({ eventId: EmitEvent.ScaleCom }, {
data: {
show: true,
mapViewId: this.mapController?.mapViewId
}
})
emitter.emit({ eventId: EmitEvent.ZoomCom }, {
data: {
show: true,
mapViewId: this.mapController?.mapViewId
}
})
emitter.emit({ eventId: EmitEvent.Copyright }, {
data: {
show: true,
mapViewId: this.mapController?.mapViewId
}
})
}
}, mapOptions: this.mapOpt}).width('100%').height('100%')
显示位置设置

通过data的x、y、Alignment和mapViewId字段进行控制。

MapComponent({ onReady: async (err, mapController) => {
if (!err) {
// 获取地图的控制器类,用来操作地图
this.mapController = mapController;
emitter.emit({ eventId: EmitEvent.LocationCom }, {
data: {
show: true,
mapViewId: this.mapController?.mapViewId,
y: -200
}
})
emitter.emit({ eventId: EmitEvent.ScaleCom }, {
data: {
show: true,
mapViewId: this.mapController?.mapViewId,
y: -200
}
})
emitter.emit({ eventId: EmitEvent.ZoomCom }, {
data: {
show: true,
mapViewId: this.mapController?.mapViewId,
y: -200
}
})
emitter.emit({ eventId: EmitEvent.Copyright }, {
data: {
show: true,
mapViewId: this.mapController?.mapViewId,
y: -50
}
})
}
}, mapOptions: this.mapOpt}).width('100%').height('100%')
监听定位控件事件
MapComponent({ onReady: async (err, mapController) => {
if (!err) {
// 获取地图的控制器类,用来操作地图
this.mapController = mapController;
emitter.on({ eventId: EmitEvent.changeGeoLocation }, (e) => {
console.log('获取点击定位控件的定位数据',e)
})
}
}, mapOptions: this.mapOpt}).width('100%').height('100%')

上一篇

信息框

下一篇

基础图层

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