美文网首页
小程序地图控件基本使用

小程序地图控件基本使用

作者: 高阳刘 | 来源:发表于2018-06-29 16:07 被阅读0次
.wxml
<map 
id="map" 
longitude="{{longitude}}" 
latitude="{{latitude}}" 
scale="14" 
controls="{{controls}}" bindcontroltap="controltap" 
markers="{{markers}}" bindmarkertap="markertap"
 polyline="{{polyline}}" 
circles="{{circles}}" 
bindregionchange="regionchange" 
show-location 
style="width: 100%; height: 350px;">
</map>
参数名 参数类型 描述
longitude Number 中心经度
latitude Number 中心纬度
scale Number 缩放级别,取值范围 5-18(默认16 number)
markers Array 标记点
polyline Array 路线
circle Array
controls Array 控件
include-points Array 缩放视野以及所有给定的坐标点
circle Boolean
show-location EventHandle 显示带有方向的当前定位点
bindmarkertap EventHandle 点击标记点时触发
bindcontroltap EventHandle 点击控件时触发
bindregionchange EventHandle 视野发生变化时触发
bindtap EventHandle 点击地图时触发

除了显示基本地图,还可以在地图上添加markers–标注,polyline–折线,circles–圆形,controls–控件。

markers
data: {
    markers: [{
      iconPath: "../../img/marker_red.png",
      id: 0,
      latitude: 40.002607,
      longitude: 116.487847,
      callout:{
        content:'气泡名称',
        color: '#FF0000',
        fontSize: 15,
        borderRadius: 10,
        display: 'ALWAYS',
      },
      width: 35,
      height: 45
    }],
    ... //省略代码
    }
参数名 参数类型 必传 描述
id Number N 标记点id(marker事件回调会返回此id)
longitude Number Y 中心经度(浮点数,范围:-180~180)
latitude Number Y 中心纬度(浮点数,范围:-90~90)
title String N 标注点名
iconPath String Y 显示的图标(项目目录下的图片路径,支持相对路径写法,以‘/’开头,则表示相对小程序的根目录,也支持临时路径)
rotate Number N 旋转角度(顺时针旋转的角度,范围:0~360,默认0)
alpha Number N 标注的透明度(默认1,无透明)
width Number N 标注图标宽度(默认图标实际宽度)
height Number N 标注图标高度(默认图标实际高度)
callout Object N 自定义标注点上方的气泡窗口 ({content,color,fontSize,borderRadius,bgColor,padding,boxShadow,display})
label Object N 为标记点旁边增加标签({color,font Size,content,x,y},可识别换行符,x,y原点是marker对应的经纬度)
polyline

指定一系列坐标点,从数组第一项连线至最后一项

参数名 参数类型 必传 描述
points Array Y 经纬度数组([{latitude:0,longitude:0}])
color String N 线的颜色(8位16进制表示,后两位表示alpha值,如:#000000AA)
width Number N 线的宽度
dotted'Line Boolean N 是否是虚线(默认false)
// .wxml
<map id="myMap" style='width:100%;height:50%' longitude="{{longitude}}" latitude="{{latitude}}" polyline='{{polyline}}'/>
// .js 
Page({
    data: {
        polyline:[{
            points:[{
                latitude:'40.006822',
                longitude:'116.481451'
             }, {
                longitude: '116.487847',
                latitude: '40.002607'
             }, {
                longitude: '116.496507',
                latitude: '40.006103'
             }, {
                latitude:'40.002607',
                longitude: '116.587847',
            }],
            width:2,
            color:'#000000AA',
            dottedLine:false
        }]
    }
})
circles

在地图上显示圆

参数名 参数类型 必传 描述
longitude Number Y 中心经度(浮点数,范围:-180~180)
latitude Number Y 中心纬度(浮点数,范围:-90~90)
color String N 描边颜色(8位16进制表示,后两位表示alpha值,如:#000000AA)
fill'Color String N 填充颜色(8位16进制表示,后两位表示alpha值,如:#000000AA)
strokeWidth Number N 描边宽度
radius Number Y 半径
// .wxml
<map id="myMap" style='width:100%;height:50%' longitude="{{longitude}}" latitude="{{latitude}}" circles='{{circles}}'/>
// .js 
Page({
    data: {
        circles:[{
            latitude:40.002607,
            longitude: 116.587847,
            color: '#ee7788aa',
            radius: 50,
            fillColor:'#7cb5ec88',
            strokeWidth:1
        }]
    }
})
controls

在地图上显示控件,控件不随地图移动

参数名 参数类型 必传 描述
id Number N 控件id(在控件点击事件回调返回此id)
position Object Y 控件在地图的位置(控件相对地图位置)
icon'Path String Y 显示的图标(项目路径下的路径,支持相对路径写法,以‘/’开头表示相对小程序的根目录)
clickable Boolean N 是否可点击(默认不可点击)

position

参数名 参数类型 必传 描述
left Number N 距离地图左边界的距离(默认为0)
top Number N 距离地图上边界的距离(默认为0)
width Number N 控件宽度(默认图片宽度)
height Number N 控件高度(默认图片高度)
// .wxml
<map id="myMap" style='width:100%;height:400px' longitude="{{longitude}}" latitude="{{latitude}}" controls='{{controls}}' bindcontroltap='controltap'/>
// .js 
Page({
    data: {
        controls: [{
            id: 1,
            iconPath: '../../img/marker_yellow.png',
            position: {
                left: 10,
                top: 360,
                width: 35,
                height: 35
            },
            clickable: true
        }]
    }
}),
controltap: function (e) {
    console.log(e.controlId); # 控件id 1
}
#可以通过在map上添加一个按钮,来实现诸如:定位、状态返回等操作。 
#(直接通过布局文件在map上添加view是显示不出来的)
绑定事件
参数名 参数类型 描述
bindmarkertap EventHandel 点击标记点时触发
bindcontroltap EventHandel 点击控件时触发
bindregionchange EventHandel 视野发生变化时触发
bindtap EventHandel 点击地图时触发
BUG

关于经纬度,官方文档上都写的是Number类型。但是通过IDE调试的时候,写成字符串也是可以的。但是在IOS真机上运行时,markers却显示不出来,也不报错。

后来自己对照属性的类型,发现后台传来的经纬度是字符串类型的。而字符串类型的经纬度在IOS真机上经测试就是显示不出来。

所以将字符串转成Number类型即可。

附原始手册地址:http://blog.csdn.net/crazy1235/article/details/55004841

相关文章

  • 小程序地图控件基本使用

    .wxml 除了显示基本地图,还可以在地图上添加markers–标注,polyline–折线,circles–圆形...

  • 地图的基本使用-MKMapView

    地图的基本使用-MKMapView(地图显示) MapKit有一个比较重要的UI控件 :MKMapView,专门用...

  • 微信小程序-地图控件的使用

    首先去腾讯地图配置 小程序对应的keyhttps://lbs.qq.com/console/mykey.html并...

  • 小程序原生组件使用限制

    小程序当中多个原生组件显示问题 最近在开发小程序的过程中。使用到小程序地图组件,地图全页展示,在地图上展示其他组件...

  • 微信小程序地图控件Map的使用

    本文介绍微信小程序map控件的使用map为原生控件之一……介绍完map控件之后下面直接来看代码怎么实现吧和往常一样...

  • 微信小程序添加外部地图服务数据

    先上效果: 缘起 使用微信小程序做地图相关功能的时候,有个需求是需要接入自己发布的地图服务。查看微信小程序地图组件...

  • 支付宝小程序地图层级和控件问题

    最近在写支付宝小程序的时候,想要在地图上面添加几个按钮,但是发现支付宝小程序不能像微信小程序那样有专用的控件标签,...

  • uni 地图回到缩放scale

    uni 小程序地图map缩放重置 uni小程序中,涉及地图一类,基本都会涉及定位(即准心一样icon)功能为:从地...

  • iOS-MapKit文集目录

    前言 MapKit框架的导入 地图展示地图的基本使用-地图显示地图的中级使用-用户追踪地图高级-大头针基本使用地图...

  • 小程序采坑之旅

    1. 微信小程序中使用腾讯地图 如果你的地图js插件是放在客户端不是部署在服务器的,比如放在小程序端,请把腾讯地图...

网友评论

      本文标题:小程序地图控件基本使用

      本文链接:https://www.haomeiwen.com/subject/vdhnyftx.html