本文原创发布在华为开发者社区。
介绍
本示例使用Gauge将数据展示为环形图表来实现渐变前景色。
效果预览
使用说明
如果在运行该示例代码时,出现运行不了的情况,可尝试选择DevEco Studio菜单栏Build里面的Clean Project选项,来清理工程。
实现思路
- 使用将数据展示为环形图表
- 通过点击增加、减少按钮来改变数据,进而改变环形图表实现渐变效果
核心代码如下:
Gauge({ value: this.value, min: 1, max: 100 }) {
Column() {
Text(this.value.toString())
.fontWeight(FontWeight.Medium)
.width('62%')
.fontColor('#ff182431')
.maxFontSize('60.0vp')
.minFontSize('30.0vp')
.textAlign(TextAlign.Center)
.margin({ top: '35%' })
.textOverflow({ overflow: TextOverflow.Ellipsis })
.maxLines(1)
}.width('100%').height('100%')
}
.startAngle(210)
.endAngle(150)
.colors([[new LinearGradient([{ color: '#deb6fb', offset: 0 }, { color: '#ac49f5', offset: 1 }]), this.value],
[new LinearGradient([{ color: '#bbb7fc', offset: 0 }, { color: '#bbb7fc', offset: 1 }]), 100 - this.value]])
.width('80%')
.height('80%')
.strokeWidth(18)
.description(this.descriptionBuilder)
.trackShadow({ radius: 7, offsetX: 7, offsetY: 7 })
.padding(18)
.indicator(null)
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。