详解微信小程序——自定义圆形进度条


Posted in Javascript onDecember 29, 2016

微信小程序 自定义圆形进度条,具体如下:

无图无真相,先上图:

详解微信小程序——自定义圆形进度条

实现思路,先绘制底层的灰色圆圈背景,再绘制上层的蓝色进度条。

代码实现:

JS代码:

Page({ 
 data: {}, 
 onLoad: function (options) { 
  // 页面初始化 options为页面跳转所带来的参数 
 }, 
 onReady: function () { 
 
  // 页面渲染完成 
  var cxt_arc = wx.createCanvasContext('canvasArc');//创建并返回绘图上下文context对象。 
  cxt_arc.setLineWidth(6); 
  cxt_arc.setStrokeStyle('#d2d2d2'); 
  cxt_arc.setLineCap('round') 
  cxt_arc.beginPath();//开始一个新的路径 
  cxt_arc.arc(106, 106, 100, 0, 2*Math.PI, false);//设置一个原点(106,106),半径为100的圆的路径到当前路径 
  cxt_arc.stroke();//对当前路径进行描边 
   
  cxt_arc.setLineWidth(6); 
  cxt_arc.setStrokeStyle('#3ea6ff'); 
  cxt_arc.setLineCap('round') 
  cxt_arc.beginPath();//开始一个新的路径 
  cxt_arc.arc(106, 106, 100, -Math.PI * 1 / 2, Math.PI*6/5, false); 
  cxt_arc.stroke();//对当前路径进行描边 
 
  cxt_arc.draw(); 
   
 }, 
 onShow: function () { 
  // 页面显示 
 }, 
 onHide: function () { 
  // 页面隐藏 
 }, 
 onUnload: function () { 
  // 页面关闭 
 } 
})

页面布局:

<view class="wrap"> 
 <view class="top"> 
  <canvas class="cir" style="width:212px; height:212px;" canvas-id="canvasArc"> 
  </canvas> 
 
  <view class="cc">中间</view> 
 
 </view> 
</view>

CSS样式:

.cir{ 
 display: inline-block; 
 margin-top: 20rpx; 
 
} 
 
.top{ 
 text-align: center 
} 
 
.cc{ 
  
 margin-top: -120px; 
  
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
深入理解JavaScript 闭包究竟是什么
Apr 12 Javascript
浅析showModalDialog数据缓存问题(用禁止浏览器缓存解决)
Jul 09 Javascript
js控制frameSet示例
Sep 10 Javascript
javascript实现数字+字母验证码的简单实例
Feb 10 Javascript
JS+CSS实现仿新浪微博搜索框的方法
Feb 24 Javascript
利用Javascript裁剪图片并存储的简单实现
Mar 13 Javascript
Javascript中类式继承和原型式继承的实现方法和区别之处
Apr 25 Javascript
基于vue.js无缝滚动效果
Jan 25 Javascript
vue中的模态对话框组件实现过程
May 01 Javascript
AngularJS实现动态切换样式的方法分析
Jun 26 Javascript
JS获取月的第几周和年的第几周实例代码
Dec 05 Javascript
在Vue中创建可重用的 Transition的方法
Jun 02 Javascript
JS作用域深度解析
Dec 29 #Javascript
javascript中的深复制详解及实例分析
Dec 29 #Javascript
canvas学习之API整理笔记(一)
Dec 29 #Javascript
Javascript Function.prototype.bind详细分析
Dec 29 #Javascript
jQuery自定义插件详解及实例代码
Dec 29 #Javascript
canvas快速绘制圆形、三角形、矩形、多边形方法介绍
Dec 29 #Javascript
JavaScript获取短信验证码(周期性)
Dec 29 #Javascript
You might like
老照片 - 几十年前的收音机与人
2021/03/02 无线电
Smarty foreach控制循环次数的实现详解
2013/07/03 PHP
腾讯CMEM的PHP扩展编译安装方法
2015/09/25 PHP
Laravel重写用户登录简单示例
2016/10/08 PHP
javascript中的location用法简单介绍
2007/03/07 Javascript
动态创建样式表在各浏览器中的差异测试代码
2011/09/13 Javascript
Three.js源码阅读笔记(基础的核心Core对象)
2012/12/27 Javascript
尝试在让script的type属性等于text/html
2013/01/15 Javascript
网页前端优化之滚动延时加载图片示例
2013/07/13 Javascript
js实现div的切换特效上一个下一个
2014/02/11 Javascript
javascript中几个容易混淆的概念总结
2015/04/14 Javascript
javascript实现日期时间动态显示示例代码
2015/09/08 Javascript
详解node.js中的npm和webpack配置方法
2018/01/21 Javascript
在ES5与ES6环境下处理函数默认参数的实现方法
2018/05/13 Javascript
使用微信SDK自定义分享的方法
2019/07/03 Javascript
jQuery实现简单飞机大战
2020/07/05 jQuery
Js跳出两级循环方法代码实例
2020/09/22 Javascript
[00:58]他们到底在电话里听到了什么?
2017/11/21 DOTA
[00:52]DOTA2国际邀请赛
2020/02/21 DOTA
[01:15:16]DOTA2-DPC中国联赛 正赛 Elephant vs Aster BO3 第一场 1月26日
2021/03/11 DOTA
Python数组条件过滤filter函数使用示例
2014/07/22 Python
python logging类库使用例子
2014/11/22 Python
对于Python中线程问题的简单讲解
2015/04/03 Python
浅谈python import引入不同路径下的模块
2017/07/11 Python
Python中的is和==比较两个对象的两种方法
2017/09/06 Python
Python OpenCV之图片缩放的实现(cv2.resize)
2019/06/28 Python
详解css3 object-fit属性
2018/07/27 HTML / CSS
美国首屈一指的高品质珠宝设计师和零售商:Allurez
2018/01/23 全球购物
销售实习自我鉴定
2013/12/07 职场文书
总经理职责
2013/12/22 职场文书
会计个人实习计划书
2014/08/15 职场文书
2014年社区卫生工作总结
2014/12/18 职场文书
三峡大坝导游词
2015/01/31 职场文书
部门主管竞聘书
2015/09/15 职场文书
银行求职信范文
2019/05/13 职场文书
python学习之panda数据分析核心支持库
2021/05/07 Python