LinearProgressIndicator
进度条有两类,一个是有具体值,另一个没有
late AnimationController controller;
@override
void initState() {
controller = AnimationController(
vsync: this,
duration: const Duration(seconds: 5),
)..addListener(() {
setState(() {});
});
controller.repeat(reverse: true);
super.initState();
}
@override
void dispose() {
controller.dispose();
super.dispose();
}
Widget build(BuildContext context) {
return Scaffold(
body: Padding(
padding: const EdgeInsets.all(20.0),
child: Column(
mainAxisAlignment: MainAxisAlignment.spaceEvenly,
children: [
Text(
'Linear progress indicator with a fixed color',
style: const TextStyle(fontSize: 20),
),
LinearProgressIndicator(
value: controller.value,
semanticsLabel: 'Linear progress indicator',
),
],
),
),
);
}
这篇博客展示了如何在Flutter中利用AnimationController创建一个带有固定颜色的线性进度条,并实现动画效果。通过监听AnimationController的值并更新状态,实现了进度条的动态变化,同时设置为反向重复播放,增加了交互体验。
1655

被折叠的 条评论
为什么被折叠?



