开发者社区
社区提问意见反馈
开发者钉组织
扫描二维码
加入支付宝开发者钉组织
基础 api
基础
应用级事件
界面
导航栏
tabbar
路由
交互反馈
下拉刷新
联系人
选择城市
选择日期
动画
画布
地图
mapcontext
设置地图属性
获取地图属性
平移和缩放
设置覆盖物
地图相关计算
屏幕坐标转换
计算路径
键盘
滚动
节点查询
选项选择器
级联选择
设置窗口背景
设置页面是否支持下拉
字体
跳转
多媒体
缓存
文件
位置
网络
设备
worker
数据安全
分享
收藏
自定义通用菜单
更新管理
web-view组件控制
升级支付宝最新版本
隐私信息授权
小程序广告
开放能力 api
开发 > api > 基础 api > 界面 > 地图 > mapcontext > 设置地图属性 > mapcontext.updatecomponents
评论 (2)
收藏
我的文档
设置

mapcontext.updatecomponents(object object)

支付宝客户端 10.1.35 或更高版本; 若版本较低,建议采取 兼容处理

主体: 企业支付宝小程序个人支付宝小程序

设置地图属性及覆盖物。

object object

查看示例

属性 类型 默认值 必填 描述
latitude number -

中心纬度

longitude number -

中心经度

scale number 16

缩放级别,取值范围为 3-20

min-scale number -

限制最小缩放级别,取值范围为 3-20

max-scale number -

限制最大缩放级别,取值范围为 3-20

skew number -

倾斜角度,范围 0 ~ 80

rotate number -

地图顺时针旋转的角度,范围 0 ~ 360

markers array -

点标记覆盖物数组。格式详见 markers

polyline array -

线段覆盖物数组。格式详见 polyline

polygon array -

多边形覆盖物数组。格式详见 polygon

circles array -

圆形覆盖物数组。格式详见 circles

controls array -

在地图 view 之上的控件。格式详见 controls

limit-region array -

限制地图显示范围的经纬度数组。根据给定的经纬度数组计算出最小外包区域,该区域能够包含所有给定点。地图拖动只能在该区域内进行,且会限制地图的最小缩放级别

属性 类型 描述
latitude number

纬度

longitude number

经度

include-points array -

包含点。地图的可视区域将至少包含这些点

属性 类型 描述
latitude number

纬度

longitude number

经度

include-padding object -

内边距。设置由 include-points 确定的可视区域与地图的内边距

属性 类型 描述
left number

左内边距

right number

右内边距

top number

上内边距

bottom number

下内边距

ground-overlays array -

贴图覆盖物

属性 类型 描述
id string

覆盖物 id。用于刷新指定贴图覆盖物

include-points array

包含点。用于确定覆盖物的覆盖区域

属性 类型 描述
latitude number

纬度

longitude number

经度

image string

贴图覆盖物图片的路径

alpha number

贴图覆盖物不透明度

zindex number

设置贴图覆盖物层级

tile-overlay object -

网格贴图覆盖物。安卓 10.3.70 开始支持

属性 类型 描述
url string

网格贴图地址前缀

type number

网络贴图地址格式。为 1(默认值)时,贴图地址为 {url}&x={x}&y={y}&z={zoom}.png,为 0 时地址为 {url}/{zoom}/{x}-{y}-{zoom}.png。 其中 x 和 y 为贴图坐标,zoom 为缩放级别

tilewidth number

网格贴图宽度。ios 环境中小于 64 时设置不生效,并且会将数值替换为默认的 256

tileheight number

网格贴图高度。ios 环境中小于 64 时设置不生效,并且会将数值替换为默认的 256

zindex number

设置贴图覆盖物层级

custom-map-style string -

地图样式

枚举值 描述 兼容性
default

默认样式

-
light

精简样式

-
map-type number -

地图类型

枚举值 描述 兼容性
0

标准地图

-
1

卫星地图

-
2

夜视地图

-
3

导航地图

-
4

公交地图

-
setting object -

地图设置,如手势功能/地图信息等

属性 类型 兼容性 描述
gestureenable number -

是否开启手势功能(可旋转地图)

枚举值 描述 兼容性
0

关闭

-
1

开启

-
showscale number -

是否显示比例尺

枚举值 描述 兼容性
0

隐藏

-
1

显示

-
showcompass number -

是否显示指南针

枚举值 描述 兼容性
0

隐藏

-
1

显示

-
tiltgesturesenabled number -

是否开启双指滑动功能(可修改地图倾斜角)

枚举值 描述 兼容性
0

关闭

-
1

开启

-
trafficenabled number -

是否显示交通路况

枚举值 描述 兼容性
0

不显示

-
1

显示

-
showmaptext number -

是否显示 poi 信息,如商店、加油站、医院、车站等

枚举值 描述 兼容性
0

不显示

-
1

显示

-
logoposition object -

设置地图 logo 位置

属性 类型 描述
centerx number

屏幕 x 轴坐标

centery number

屏幕 y 轴坐标

locationmarker object
支付宝: 10.2.33

设置地图定位点。可传入 marker 对象进行设置

locationmarkeranim object
支付宝: 10.2.33

设置地图定位点动画

属性 类型 描述
animtype string

动画类型。目前仅支持一种雷达动画

枚举值 描述 兼容性
radar

雷达动画

-
fillcolor string

雷达扫描区域的填充颜色。支持十六进制颜色值

strokecolor string

雷达扫描区域边界描边的颜色

strokewidth number

雷达扫描区域边界描边的宽度

duration number

每次雷达扫描持续的时间,单位 ms

maxradius number

最大扫描区域的半径

radiusnumber number

最多可同时显示的雷达半径数量,即扫描圈数

command object -

命令。目前仅支持 markeranim(标记点动画)

属性 类型 兼容性 描述
markeranim array -

marker 动画数组,可同时设置多个 marker 动画

属性 类型 描述
markerid number

执行动画的点标记 id

type number

动画类型,目前仅支持跳动动画(type = 1)

animatemarker object
支付宝: 10.5.10

marker 动画

属性 类型 描述
markerid number

执行动画的点标记 id

animations array

动画数组,按顺序播放

属性 类型 描述
duration number

动画时间

scale object

缩放动画

属性 类型 描述
fromx number

动画开始时,点标记 x 轴缩放比例

fromy number

动画开始时,点标记 y 轴缩放比例

tox number

动画结束时,点标记 x 轴缩放比例

toy number

动画结束时,点标记 y 轴缩放比例

show-compass boolean -

是否显示指南针

show-scale boolean -

是否显示比例尺

enable-overlooking boolean -

是否开启俯视

enable-zoom boolean -

是否开启手势缩放功能

enable-scroll boolean -

是否开启手势拖动功能

enable-rotate boolean -

是否开启手势旋转功能

enable-traffic boolean -

是否开启实时路况

enable-poi boolean -

是否显示 poi 信息,如商店、加油站、医院、车站等

enable-building boolean -

是否展示建筑物

enable-satellite boolean -

是否开启卫星图

success function -

调用成功的回调函数

fail function -

调用失败的回调函数

complete function -

调用结束的回调函数(调用成功、失败都会执行)

mapcontext.updatecomponents axml 代码
mapcontext.updatecomponents js 代码
<view>
  <map id="map" style="width:100%; height:500px"/>
  <button ontap="updatecomponents">设置地图属性及覆盖物</button>
</view>
page({
    data: {
        mapctx: null
    },
    onready() {
        this.mapctx = my.createmapcontext('map');
    },
    // 设置比例尺控件是否可见。
    updatecomponents() {
        this.mapctx.updatecomponents({
            scale: 15, // 缩放级别
            longitude: 120.125872, // 中心经度
            latitude: 30.272960, // 中心纬度
            command: {
                // marker 动画
                markeranim: [
                    { type: 1, markerid: 1 },
                    { type: 1, markerid: 2 },
                ],
            },
            setting: {
                gestureenable: 1, // 开启手势功能
                showscale: 1, // 显示比例尺
                showcompass: 1, // 显示指南针
                tiltgesturesenabled: 1, // 开启双指下滑手势
                trafficenabled: 1, // 显示交通路况
                showmaptext: 1, // 显示地图 poi 信息
                logoposition: { centerx: 150, centery: 90 }, // 指定地图 logo 位置
            },
            // 点标记覆盖物
            markers: [
                {
                    id: 1,
                    latitude: 30.272960,
                    longitude: 120.125872,
                    width: 19,
                    height: 31,
                    iconpath: 'https://gw.alipayobjects.com/mdn/rms_dfc0fe/afts/img/a*x9yerpemtrsaaaaaaaaaaaaaarqnaq',
                    callout: {
                        content: '1',
                    },
                },
                {
                    id: 2,
                    latitude: 30.275960,
                    longitude: 120.125872,
                    width: 19,
                    height: 31,
                    iconpath: 'https://gw.alipayobjects.com/mdn/rms_dfc0fe/afts/img/a*x9yerpemtrsaaaaaaaaaaaaaarqnaq',
                    callout: {
                        content: '2',
                    },
                }
            ],
            // 线段覆盖物
            polyline: [
                {
                    points: [
                        {
                            latitude: 30.272960,
                            longitude: 120.125872,
                        },
                        {
                            latitude: 30.272960,
                            longitude: 120.124572,
                        },
                        {
                            latitude: 30.274260,
                            longitude: 120.124572,
                        }
                    ],
                    color: '#ff0000dd',
                    width: 10,
                    dottedline: false,
                    iconwidth: 10,
                }
            ],
            // 包含点
            'include-points': [
                {
                    latitude: 30.272960,
                    longitude: 120.125872,
                },
                {
                    latitude: 30.275960,
                    longitude: 120.125872,
                },
            ],
            // 内边距
            'include-padding': {
                left: 10,
                right: 0,
                top: 0,
                bottom: 0
            },
            // 贴图覆盖物
            'ground-overlays': [{
                // 刷新的时候需要变更id值
                id: '10',
                // 确定贴图覆盖物位置
                'include-points': [{
                    latitude: 39.935029,
                    longitude: 116.384377,
                }, {
                    latitude: 39.939577,
                    longitude: 116.388331,
                }],
                image: 'https://gw.alipayobjects.com/mdn/rms_dfc0fe/afts/img/a*x9yerpemtrsaaaaaaaaaaaaaarqnaq',
            }],
            // 网格贴图覆盖物
            'tile-overlay': {
              url: 'https://gw.alipayobjects.com/mdn/rms_dfc0fe/afts/img/a*x9yerpemtrsaaaaaaaaaaaaaarqnaq',
              type: 0,
              tilewidth: 64,
              tileheight: 64,
              zindex: 1,
            },
            success: res => {
                console.log('res', res);
            },
            fail: res => {
                console.log('fail', res);
            }
        });
    }
});
凯发k8官方网娱乐官方 copyright © 2022 支付宝(杭州)信息技术有限公司  | icp证浙b2-20160559
该文档对你是否有帮助?
当前页面目录
网站地图