Answers:
这对我有用:
valueColor: new AlwaysStoppedAnimation<Color>(Colors.blue),
The argument type 'AlwaysStoppedAnimation<Color>' can't be assigned to the parameter type 'Animation<Color>'
1)使用valueColor
财产
CircularProgressIndicator(
valueColor: new AlwaysStoppedAnimation<Color>(Colors.blue),
),
2)accentColor
在您的主MaterialApp
窗口小部件中设置。
这是最好的方法,因为在使用CircularProgressIndicator
小部件时您不想一直设置颜色
MaterialApp(
title: 'My App',
home: MainPAge(),
theme: ThemeData(accentColor: Colors.blue),
),
3)使用Theme
小部件
Theme(
data: Theme.of(context).copyWith(accentColor: Colors.red),
child: new CircularProgressIndicator(),
)
主题是一个小部件,您可以将其插入到小部件树的任何位置。它使用自定义值覆盖当前主题。尝试以下操作:
new Theme(
data: Theme.of(context).copyWith(accentColor: Colors.yellow),
child: new CircularProgressIndicator(),
);
参考:https : //gitter.im/flutter/flutter?at=5a84cf9218f388e626a51c2d
在main.dart
设置主题时accentColor
,CircularProgressIndicator
将使用该颜色
void main() => runApp(new MaterialApp(
theme: ThemeData(primaryColor: Colors.red, **accentColor: Colors.yellowAccent**),
debugShowCheckedModeBanner: false,
home: SplashPage()
));
默认情况下,它从Themedata继承accentColor
void main() => runApp(new MaterialApp(
theme: ThemeData(
primaryColor: Colors.blue,
accentColor: Colors.blueAccent,
//This will be the color for CircularProgressIndicator color
),
home: Homepage()
));
您可以使用新颜色更改此accentColor属性。其他方式是使用这样的预定义ThemeData
void main() => runApp(new MaterialApp(
theme: ThemeData.light().copyWith(
accentColor: Colors.blueAccent,
//change the color for CircularProgressIndicator color here
),
home: Homepage()
));
否则,您可以在CircularProgressIndicator中直接更改此颜色属性,如下所示
CircularProgressIndicator(
valueColor: AlwaysStoppedAnimation<Color>(Colors.red),
),
valueColor:new AlwaysStoppedAnimation(Colors.yellow),