弧形进度条实现,有人知道方法吗?

设备绑定过程中需要展示弧形进度条progress组件不能设置为弧形不满足需求,如果使用画布组件,属性动画和显式动画都是对组件的通用属性做变化(长宽、旋转等),这种弧形进度条的动画该如何设置?


HarmonyOS
2024-05-26 11:17:12
浏览
收藏 0
回答 1
回答 1
按赞同
/
按时间
开心的兔子

使用的核心API

Canvas画布组件

核心代码解释

用画布画弧形的进度条

test=():void=>{ 
    let offContext = this.offCanvas.getContext("2d", this.settings) 
    offContext.lineCap = "round" 
    offContext.lineWidth=8 
    offContext.beginPath() 
    offContext.arc( 
      100, 
      75, 
      50, 
      (225-90) * Math.PI / 180, 
      (135-90) * Math.PI / 180 
    ) 
    offContext.strokeStyle = "#ff8c909b" 
    offContext.stroke() 
  
    offContext.beginPath() 
    offContext.arc( 
      100, 
      75, 
      50, 
      (225 - 90) * (Math.PI / 180), 
      this.radianTest===0?(135 - 90) * (Math.PI / 180):(135 - 270 * (1 -this.radianTest) - 90) * (Math.PI / 180), 
  
    ) 
    offContext.strokeStyle = this.color 
    offContext.stroke() 
    let image = this.offCanvas.transferToImageBitmap() 
    this.context.transferFromImageBitmap(image) 
  }
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.

实现效果

适配版本信息

SDK:OpenHarmony-4.1.6.8

IDE:DevEco Studio 4.1.1.600

分享
微博
QQ
微信
回复
2024-05-27 11:02:48


相关问题
HarmonyOS 怎样实现进度条
1032浏览 • 1回复 待解决
实现一个发送进度条通知的方法
925浏览 • 1回复 待解决
HarmonyOS 进度条样式
823浏览 • 1回复 待解决
如何实现带图片的进度条
1394浏览 • 1回复 待解决
如何实现带刻度的进度条
1257浏览 • 1回复 待解决
Progress进度条如何实现渐变色?
1820浏览 • 1回复 待解决
基于Progress组件的进度条
1475浏览 • 1回复 待解决
HarmonyOS 多彩色进度条展示
464浏览 • 1回复 待解决
HarmonyOS 环状渐变色进度条
783浏览 • 1回复 待解决
HarmonyOS 多图片合集轮播+进度条
620浏览 • 1回复 待解决
服务卡片的进度条如何停止动画
9764浏览 • 1回复 待解决
如何实现一个月食样式的进度条
816浏览 • 1回复 待解决
如何实现振动,有人知道
1963浏览 • 2回复 待解决
怎么在进度条更新的时候刷新页面?
5565浏览 • 1回复 待解决
简单的绘图板有人知道方法
1418浏览 • 1回复 待解决