小程序九:导航&地图&画布】的更多相关文章

微信头部导航栏可能通过json配置: 但是有时候我们项目需求可能需要自定义头部导航栏,如下图所示: 现在具体说一下实现步骤及方法: 步骤: 1.在 app.json 里面把 "navigationStyle" 设置为 "custom" 这样子之后就只会保留右上角胶囊按钮了. 2.在app.js中通过wx.getSystemInfo()获取头部导航条的高度,因为在不同的手机型号头部那条栏目高度可能不一致. App({ onLaunch: function () { w…
1,底部导航栏这个功能是非常常见的一个功能,基本上一个完成的app,都会存在一个导航栏,那么微信小程序的导航栏该怎么实现呢?经过无数的踩坑,终于实现了,好了,先看看效果图. 2,对于底部导航栏,小程序上给出的文档要求里面的item最少2个,最多五个. 3,在项目中找到app.json这个文件 { "pages":[ "pages/index/index", "pages/logs/logs", "pages/mine/mine"…
小程序底部导航 1.app.json页面配置: { "pages": [ "pages/movie/movie", "pages/cinema/cinema", "pages/find/find", "pages/me/me" ], "window": { "backgroundTextStyle": "light", "navigati…
背景 在做小程序时,关于默认导航栏,我们遇到了以下的问题: Android.IOS 手机对于页面 title 的展示不一致,安卓 title 的显示不居中 页面的 title 只支持纯文本级别的样式控制,不能够做更丰富的 title 效果 左上角的事件无法监听.定制 路由导航单一,只能够返回上一页,深层级页面的返回不够友好 探索 小程序自定义导航栏已开放许久>>了解一下,相信不少小伙伴已使用过这个功能,同时不少小伙伴也会发现一些坑: 机型多如牛毛:自定义导航栏高度在不同机型始终无法达到视觉上的…
Map组件 是原生组件,使用时请注意相关限制.个性化地图能力可在小程序后台"设置-开发者工具-腾讯位置服务"申请开通. 设置subkey后,小程序内的地图组件均会使用该底图效果,底图场景的切换会在后续版本提供. 详见<小程序个性地图使用指南> 官方文档地址 https://developers.weixin.qq.com/miniprogram/dev/component/map.html 本文主要展示地图组件的几个能力: 经纬度转预览图 经纬度转大图 地理位置转经纬度 预…
微信小程序-基于高德地图API实现天气组件(动态效果) ​ 在社区翻腾了许久,没有找到合适的天气插件.迫不得已,只好借鉴互联网上的web项目,手动迁移到小程序中使用.现在分享到互联网社区中,帮助后续有需要的开发者. 1.组件介绍 1.1 组件效果预览图 ​ 小程序组件继承了外部样式colorui的色彩,但实际动画会根据父节点的color属性自动填充颜色,即使不引入colorui这个样式库,也可以在该组件引用外定义一个有color属性的块包裹该组件,同样可以达到如图的效果. 1.2 构造形式 1.…
先上效果: 缘起 使用微信小程序做地图相关功能的时候,有个需求是需要接入自己发布的地图服务.查看微信小程序地图组件文档,发现它对地图相关的支持很少,只有一些基础功能,比如添加点.线.面.气泡和一些常规的地图事件监听,并没有添加地图服务相关的支持. 不过有了需求,也要想办法解决呀. 图层查询 既然小程序不能直接添加地图服务,那就把图层数据查出来,然后通过添加点线面方式添加到地图,具体要怎么实现呢? 首先想到的是通过图层查询接口把所有数据查出来. 但是既然数据是按图层发布的,一般数据量都比较大,把所…
获取不同机型微信小程序状态栏+导航栏高度 一. 前言 很多时候我们开发微信小程序,都需要先知道状态栏和导航栏的高度,才能去做其他功能 二. 获取微信小程序状态栏高度 用wx.getSystemInfoSync()[官方文档]获取系统信息,里面有个参数:statusBarHeight(状态栏高度),是我们后面计算整个导航栏的高度需要用到的. let res = wx.getSystemInfoSync(); let statusHeight = res.statusBarHeight; // 注意…
环境:微信SDK2.9+   + uniapp (可切换直接使用.map.js不限制环境) 正题: 先创建一个地图组件 <template> <view class="customCanvasComponent"> <!-- 建立画布坐标系 --> <canvas :style="{ width: `${options.style.width}rpx`, height: `${options.style.height}rpx`, bo…
微信小程序在做地图功能时 用常规的办法height:100%:来设置高度来占满屏幕是不行的 它不会生效 应该改用单位vh 例如 height:100vh 这样就可以是地图占满整个屏幕高度…
微信小程序需要自定义导航栏,特别是左上角的自定义设置,可以设置返回按钮,菜单按钮,配置如下: 1.在app.json的window属性中增加: navigationStyle:custom 顶部导航栏就会消失,只保留右上角胶囊状的按钮. 2.为了兼容适配所有机型,包括刘海屏,需要动态获取高度,并在app.js中设置: App({ globalData: { statusBarHeight:wx.getSystemInfoSync()['statusBarHeight'] } }) 3.在wxml…
问题:页面上有一个地图功能,地图上面有两个按钮,是需要覆盖在地图上的,在小程序编辑器中显示是没问题的,但是扫码测试后发现在手机上不显示这两个按钮 解决方法:使用cover-viwe标签包裹一下就可以了…
异常描述: 使用 navigator 导航,各种属性配置没问题,就是点击死活不跳转. 异常分析: 遇到这种情况,要先考虑的就是当前配置的导航url,是不是已经使用在tabBar中,因为小程序对于navigator 有如下描述: 也就是说navigator 中使用tabBar中的路由链接,是不能使用navigateTo这种方式的,需要使用wx.switchTab()这种方式,也就是说navigate组件的 open-type 需要switchTab.…
在小程序中,有的页面需求可能需要我们做一个自定义的导航栏, 今天就来踩一踩坑 首先需要在app.js 中给全局的导航栏隐藏, // app.js window: { navigationStyle: 'custom', }, // navigationStyle 接受两个参数 ['default', 'custom']: ['系统导航栏, 默认值', '隐藏系统导航栏'] 这里隐藏掉默认的导航栏之后 可以通过自定义组件的形式,DIY 一个导航栏, 值得注意的是, 当隐藏系统导航栏后, 页面会直接…
canvas画布效果 官方文档:传送门 Page({ canvasIdErrorCallback: function (e) { console.error(e.detail.errMsg) }, onReady: function (e) { // 使用 wx.createContext 获取绘图上下文 context var context = wx.createCanvasContext('firstCanvas') //设置画笔的颜色 context.setStrokeStyle("#0…
一.本篇文章主要知识点有以下几种: 1.授权当前位置 2.map组件的使用 3.腾讯地图逆地址解析 4.坐标系的转化 二.效果如下: 三.WXML代码 <map id="map" longitude="{{longitude}}" latitude="{{latitude}}" scale="6" markers="{{markers}}" bindmarkertap="markertap&…
1.首先,要在json文件中设置为自定义的形式 "navigationStyle": "custom" 2.计算相关值 导航栏分为状态栏和标题栏,只要能算出每台手机的导航栏高度问题就迎刃而解 导航栏高度 = 胶囊按钮高度 + 状态栏到胶囊按钮间距 * 2 + 状态栏高度 注:由于胶囊按钮是原生组件,为表现一致,其单位在各种手机中都为 px,所以我们自定义导航栏的单位都必需是 px(切记不能用 rpx),才能完美适配. 因为在不同的手机型号头部那条栏目高度可能不一致,…
在微信小程序中 canvas drawImage API 传入的第一个参数是 imageResource 图片资源路径,这个参数通常由从相册选择图片 wx.chooseImage 或 wx.getImageInfo 获取图片信息来获得. 而 base64 格式图片数据,无法被 getImageInfo 直接调用,以下是解决方案: 首先使用 wx.base64ToArrayBuffer 将 base64 数据转换为 ArrayBuffer 数据 使用 FileSystemManager.write…
在componentDidMount中,初始化mapCtx. let _this = this this.mapCtx = Taro.createMapContext('container') //container是地图显示模块id Taro.getLocation({ type: 'wgs84', success(res) { _this.setState({ latitude = res.latitude, longitude = res.longitude }) } }) //移动到定位…
在app.json处设置“tabBar”,例子如下: { "pages": [ "pages/index/index", "pages/pages1/pages1", "pages/pages2/pages2" ], "window": { "backgroundTextStyle": "light", "navigationBarBackgroundCol…
nav-dynamic 微信小程序自定义nav头部组件:适配全面屏设计: 实现功能 初始进入页面时,展示初始状态下的nav样式: 页面滚动时,监听页面滚动事件,展示滚动状态下的nav样式: 根据配置字段值.页面栈数量,展示“返回”图标: 根据配置字段值.页面栈数量,展示“首页”图标,同时配置“首页路径”: 设置组件插槽,允许开发者在组件上添加任意元素: github下载地址(麻烦git给我比个…
在微信小程序开发app.json(app.json它是定义全局页面) 只是用来部署微信底部的图标,最多不能大于五个 "tabBar":{ "selectedColor":"#1AAD16", //控制我们点击图标的颜色 "list":[ //用list列表形式书写 { "pagePath":"pages/index/index", //表示点击图标跳转的路由 "text&quo…
1.在app.json中与pages平级的位置处,加上: "permission": { "scope.userLocation": { "desc": "你的位置信息将用于小程序位置接口展示" } }, 注意:必须有类似于上面的汉字文字说明.   2.在.wxml中 <button open-type="getUserInfo">允许使用微信昵称等</button> <but…
navigator 导航 属性名 类型 默认值 说明 url String   应用内的跳转链接 redirect Boolean false 是否关闭当前页面 hover-class String navigator-hover 指定点击时的样式类,当hover-class="none"时,没有点击态效果 注:navigator-hover默认为{opacity:0.7;},<navigator/>的子节点背景色应为透明色 示例代码: index.wxss: 地图 属性名…
index.wxml: longitude:经度 latitude:维度 地图所定位的区域 index.js 地图所定位的点…
点击下载: 自定义导航栏示例…
效果图如下 这个其实很简单 在app.json上面加点代码 "window":{ "backgroundTextStyle":"light", "navigationBarBackgroundColor": "#OOOOOO", "navigationBarTitleText": "WeChat", "navigationBarTextStyle"…
  GetDistance:function(lat1, lng1, lat2, lng2){ // console.log(lat1) var radLat1 = lat1 * Math.PI / 180.0; var radLat2 = lat2 * Math.PI / 180.0;   var a = radLat1 - radLat2;   var b = lng1 * Math.PI / 180.0 - lng2 * Math.PI / 180.0;   var s = 2 * Mat…
wxml: <view class="tab">  <view class="tab-left" bindtap="tabFun">   <view class="{{tabArr.curHdIndex=='0'? 'active' : ''}}" id="tab-hd01" data-id="0">tab-hd01</view>   &l…
源码 <template> <view class="echart-box"> <canvas class="ec-canvas" :id="chartId" :canvasId="chartId" @error="error"></canvas> </view> </template> <script> import Wx…