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


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 相关文章推荐
区分JS中的undefined,null,&quot;&quot;,0和false
Mar 08 Javascript
jQuery 类twitter的文本字数限制带提示效果插件
Apr 16 Javascript
关于js拖拽上传 [一个拖拽上传修改头像的流程]
Jul 13 Javascript
jQuery EasyUI API 中文文档 - Menu菜单
Oct 03 Javascript
动态的创建一个元素createElement及删除一个元素
Jan 24 Javascript
js 模式窗口(模式对话框和非模式对话框)的使用介绍
Jul 17 Javascript
Node.js 文件夹目录结构创建实例代码
Jul 08 Javascript
JS中对Cookie的操作详解
Aug 05 Javascript
Bootstrap响应式侧边栏改进版
Sep 17 Javascript
JS实现两周内自动登录功能
Mar 23 Javascript
Bootstrap图片轮播效果详解
Oct 17 Javascript
vue2.0 移动端实现下拉刷新和上拉加载更多的示例
Apr 23 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
php用数组返回无限分类的列表数据的代码
2010/08/08 PHP
解析thinkphp基本配置 convention.php
2013/06/18 PHP
PHP与Java进行通信的实现方法
2013/10/21 PHP
PHP递归复制、移动目录的自定义函数分享
2014/11/18 PHP
PHP线程的内存回收问题
2016/07/08 PHP
Yii2.0 Basic代码中路由链接被转义的处理方法
2016/09/21 PHP
浅谈PHP中try{}catch{}的使用方法
2016/12/09 PHP
php实现生成带二维码图片并强制下载功能
2018/02/24 PHP
laravel-admin的多级联动方法
2019/09/30 PHP
Prototype 工具函数 学习
2009/07/23 Javascript
jQuery UI 应用不同Theme的办法
2010/09/12 Javascript
jQuery 过滤not()与filter()实例代码
2012/05/10 Javascript
js函数返回多个返回值的示例代码
2013/11/05 Javascript
基于JQuery实现滚动到页面底端时自动加载更多信息
2014/01/31 Javascript
javascript页面加载完执行事件代码
2014/02/11 Javascript
多个$(document).ready()的执行顺序实例分析
2014/07/26 Javascript
js实现在同一窗口浏览图片
2014/09/17 Javascript
jQuery子元素过滤选择器用法示例
2016/09/09 Javascript
JavaScript实现简单贪吃蛇效果
2020/03/09 Javascript
[18:16]sakonoko 2017年卡尔集锦
2018/02/06 DOTA
python获得两个数组交集、并集、差集的方法
2015/03/27 Python
Python中用字符串调用函数或方法示例代码
2017/08/04 Python
深入浅析Python中的yield关键字
2018/01/24 Python
对python中的for循环和range内置函数详解
2018/04/17 Python
异步任务队列Celery在Django中的使用方法
2018/06/07 Python
Python基于sklearn库的分类算法简单应用示例
2018/07/09 Python
Django中数据库的数据关系:一对一,一对多,多对多
2018/10/21 Python
python基础教程之while循环
2019/08/14 Python
python将字符串转变成dict格式的实现
2019/11/18 Python
pytorch 彩色图像转灰度图像实例
2020/01/13 Python
Python中 Global和Nonlocal的用法详解
2020/01/20 Python
HTML5开发动态音频图的实现
2020/07/02 HTML / CSS
中国首家奢侈品O2O网购平台:第五大道奢侈品网
2017/12/14 全球购物
退休欢送会致辞
2015/07/31 职场文书
六年级作文之自救
2019/12/19 职场文书
JavaScript 与 TypeScript之间的联系
2021/11/27 Javascript