地图控件

     腾讯地图API控件是用户与地图交互的 UI 元素。API提供多样的控件便于用户直接使用,并提供自定义控件 Control,最大限度满足用户需求。

     目前腾讯地图API中提供的控件有:

  • 导航控件
  • 比例尺控件
  • 自定义控件等

向地图添加控件

     在地图上添加一个比例尺控件,并将控件放置在地图的左下角,可在代码中添加如下内容:

添加比例尺控件

map = new qq.maps.Map(
    document.getElementById("container"),
    {
        center: new qq.maps.LatLng(39.914850, 116.403765),
        zoom: 13
    }
);
var scaleControl = new qq.maps.ScaleControl({
    align: qq.maps.ALIGN.BOTTOM_LEFT,
    margin: qq.maps.Size(85, 15),
    map: map
});

     查看示例

     通过生成 ScaleControl 类的实例向地图添加比例尺控件。ScaleControl 需要提供选项参数,其中 align 表示添加位置的对齐方式,这是一个枚举型变量。margin 表示距离第二个参数指定的位置的横方向和竖方向的偏移量,为正数则向地图中心方向偏移。控件会默认添加到地图的左上角。map 表示要添加到的地图对象。


移除控件

     将已经添加的控件移除,需要在使用 setMap() 方法:

移除比例尺控件

scaleControl.setMap(null);

     查看示例


添加自定义控件

获取缩放级别

var zoomLevelControl = new qq.maps.Control(
    {
        content: '缩放级别:' + map.getZoom(),
        align: qq.maps.ALIGN.TOP,
        map: map
    }
);

     查看示例

     可以通过生成 qq.maps.Control 实例向地图添加自定控件。qq.maps.Control 需要选项参数进行初始化,其中,content 属性指定了自定义控件展现在页面中的DOM节点元素或者HTML字符串。align 表示添加位置的对齐方式,这是一个枚举型变量,对于控件来说,目前支持 ALIGN.TOP_LEFT, ALIGN.TOP_RIGHT,ALIGN.BOTTOM_LEFT, ALIGN.BOTTOM_RIGHT 四个取值,分别为左上角、右上角、左下角、右下角;margin 表示距离第二个参数指定的位置的横方向和竖方向的偏移量,为正数则向地图中心方向偏移。

     控件会默认添加到地图的左上角,map 表示要添加到的地图对象。

这篇文章对您解决问题是否有帮助?

已解决
未解决