의 색상을 CircularProgressIndicator
어떻게 변경할 수 있습니까?
색상 값은의 인스턴스 Animation<Color>
이지만 애니메이션 문제없이 색상을 변경하는 더 간단한 방법이 있기를 바랍니다.
답변:
이것은 나를 위해 일했습니다.
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
기본적으로 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),
),
에서 main.dart
설정 한 테마 accentColor
의는 CircularProgressIndicator
해당 색상을 사용합니다
void main() => runApp(new MaterialApp(
theme: ThemeData(primaryColor: Colors.red, **accentColor: Colors.yellowAccent**),
debugShowCheckedModeBanner: false,
home: SplashPage()
));
valueColor : new AlwaysStoppedAnimation (Colors.yellow),