注冊(cè)登錄

微信小程序進(jìn)度條怎么做 實(shí)時(shí)圓形進(jìn)度條實(shí)現(xiàn)

2020-09-28
導(dǎo)讀:2017年6月14日,微信小程序進(jìn)度條已經(jīng)是當(dāng)下最熱門的話題,下面將從多方面來(lái)談?wù)勎⑿判〕绦蜻M(jìn)度條怎么做相關(guān)的內(nèi)容。...

2017年6月14日,微信小程序進(jìn)度條已經(jīng)是當(dāng)下最熱門的話題,下面將從多方面來(lái)談?wù)勎⑿判〕绦蜻M(jìn)度條怎么做相關(guān)的內(nèi)容。

6月14日消息,據(jù)彭博社報(bào)道,為了與新東家沃爾瑪(Walmart)融合得更加順暢,Jet.com(去年8月被沃爾瑪以33億美元收購(gòu))正計(jì)劃逐步剔除自己平臺(tái)上所售的Costco旗下品牌產(chǎn)品。

6月18日,永輝將在福州開出第一家永輝生活店。值得注意的是,這也是永輝首家24小時(shí)營(yíng)業(yè)門店。據(jù)了解,這家24小時(shí)門店商品由永輝物流統(tǒng)一配送,沒有熟食但提供蔬菜水果以及冷凍冰鮮類商品。

廢話不多說,先上一張效果圖!

微信小程序進(jìn)度條怎么做 實(shí)時(shí)圓形進(jìn)度條實(shí)現(xiàn)

實(shí)現(xiàn)思路

建立兩個(gè)canvas標(biāo)簽,先繪制底層的淺灰色圓圈背景,再繪制上層的紅色進(jìn)度條。

WXML代碼

微信小程序進(jìn)度條怎么做 實(shí)時(shí)圓形進(jìn)度條實(shí)現(xiàn)

 


 
   
   

   
   

   開始動(dòng)態(tài)繪制
 

 

 

WXSS代碼

特別注意:底層的canvas最好使用
z-index:-99;放置于底層

 

page {  width: 100%;  height: 100%;  background-color: #fff;
}.circle-box {  text-align: center;  margin-top: 10vw;
}.circle {  position: absolute;  left: 0;  right: 0;  margin: auto;
}.draw_btn {  width: 35vw;  position: absolute;  top: 33vw;  right: 0;  left: 0;  margin: auto;  border: 1px #000 solid;  border-radius: 5vw;
}

 

JS代碼

 

//獲取應(yīng)用實(shí)例var app = getApp()var interval;var varName;var ctx = wx.createCanvasContext('canvasArcCir');

Page({  data: {
 },  drawCircle: function () {
   clearInterval(varName);    function drawArc(s, e) {
     ctx.setFillStyle('white');
     ctx.clearRect(0, 0, 200, 200);
     ctx.draw();      var x = 100, y = 100, radius = 96;
     ctx.setLineWidth(5);
     ctx.setStrokeStyle('#d81e06');
     ctx.setLineCap('round');
     ctx.beginPath();
     ctx.arc(x, y, radius, s, e, false);
     ctx.stroke()
     ctx.draw()
   }    var step = 1, startAngle = 1.5 * Math.PI, endAngle = 0;    var animation_interval = 1000, n = 60;    var animation = function () {      if (step <= n) {
       endAngle = step * 2 * Math.PI / n + 1.5 * Math.PI;
       drawArc(startAngle, endAngle);
       step++;
     } else {
       clearInterval(varName);
     }
   };
   varName = setInterval(animation, animation_interval);
 },  onReady: function () {    //創(chuàng)建并返回繪圖上下文context對(duì)象。
   var cxt_arc = wx.createCanvasContext('canvasCircle');
   cxt_arc.setLineWidth(6);
   cxt_arc.setStrokeStyle('#eaeaea');
   cxt_arc.setLineCap('round');
   cxt_arc.beginPath();
   cxt_arc.arc(100, 100, 96, 0, 2 * Math.PI, false);
   cxt_arc.stroke();
   cxt_arc.draw();
 },  onLoad: function (options) {

 }
})

 

注意的要點(diǎn)

1、關(guān)于小程序canvas繪制,請(qǐng)觀看微信小程序官方文檔繪制

2、開始繪制的路徑可以根據(jù) JS代碼中的變量startAngle 來(lái)選擇從哪里開始繪制

 

  • 微信小程序進(jìn)度條怎么做 實(shí)時(shí)圓形進(jìn)度條實(shí)現(xiàn)

    微信小程序商城系統(tǒng)開發(fā)其實(shí)很簡(jiǎn)單

    微信小程序商城系統(tǒng)開發(fā)其實(shí)很簡(jiǎn)單,只需要五步就可以完成,整個(gè)過程包括開發(fā)、上線、發(fā)布都可以輕松搞定...詳情

  • 微信小程序進(jìn)度條怎么做 實(shí)時(shí)圓形進(jìn)度條實(shí)現(xiàn)

    微信小程序商城系統(tǒng)免費(fèi)注冊(cè)體驗(yàn)

    微信小程序商城系統(tǒng)免費(fèi)注冊(cè)體驗(yàn),接下來(lái)是微信小程序的時(shí)代,這一波紅利在不抓住互聯(lián)網(wǎng)就再也沒什么機(jī)會(huì)了...詳情

想了解更多微信小程序開發(fā)和微信小程序大全都可以進(jìn)入微信小程序商城系統(tǒng)開發(fā)了解。

重磅推薦:小程序開店目錄

第一部分:小商店是什么

第二部分:如何開通一個(gè)小商店

第三部分:如何登錄小商店

第四部分:開店任務(wù)常見問題

第五部分:小商店可以賣什么

第六部分:HiShop小程序特色功能

第七部分:小程序直播

第八部分:小程序收貨/物流

第九部分:小程序怎么結(jié)算

第十部分:小程序客服

第十一部分:電商創(chuàng)業(yè)

第十二部分:小程序游戲開發(fā)

電話咨詢 微信咨詢 預(yù)約演示 0元開店