我需要构建一个小部件,如下所示:
作为一个有点新的Flutter,我画了一个空白,就如何实现背景被填补这样。
我的数据是这样的:
enum ProgressKeys {
articles,
meals,
bloodPressure,
mood,
physicalActivity,
weight,
}
class StepProgress {
StepProgress({
required this.displayText,
required this.progress,
required this.count,
});
final String displayText;
final int progress;
int count;
}
final Map<ProgressKeys, StepProgress> programStepCounts = {
ProgressKeys.articles: {
displayText: "Articles Read",
progress: 2,
count: 4,
},
ProgressKeys.meals: {
displayText: "Meals Logged",
progress: 3,
count: 9,
},
// Etc...
}
我所能想到的是从ListView.builder
开始,但我不知道如何在后台实现这样的东西。
1条答案
按热度按时间798qvoo81#
您可以在Stack中使用
LinearProgressIndicator
!以下是代码示例:你可以给
LinearProgressIndicator
传递一个0到1之间的值,表示完成的百分比。在代码示例中,我使用了0.7,所以它的70%已满。它看起来像这样:当然你可以改变颜色,在第一个容器中你可以调整边框。