seong
Flutter - TweenAnimatedBuilder 위젯 본문
TweenAnimatedBuilder
- Tween은 begin을 시작해 end까지 애니메이션이 움직이도록 해준다.
- 애니메이션의 속성 : duration (애니메이션 실행 시간), curve(애니메이션 실행 속도 ex: 시작은 빠르게 중간부터 천천히 등)
- 주의 사항 : Tween의 타입, builder의 두번째 파라미터 타입 모두 일치 해야한다.
소스코드
- begin을 0으로 주고, percentage는 80으로 주었다.
- CircularProgressIndicator는 0 ~ 80까지 선으로 원을 그려준다
정적인 CircularProgressIndicator위젯에 TweenAnimation을 사용해 선에 색 0 ~ 80 이 채워지는 효과가 생기게 되었다.
TweenAnimationBuilder(
tween: Tween<double>(begin: 0, end: percentage), // 0 ~ percentage 애니메이션 적용,
duration: defaultDuration,
builder: ((context, double value, child) => Stack(
fit: StackFit.expand,
children: [
CircularProgressIndicator(
value: value,
color: primaryColor,
backgroundColor: darkColor,
),
Center(
child: Text(
"${(value * 100).toInt()}%",
style: Theme.of(context).textTheme.titleMedium,
),
),
const SizedBox(height: defaultPadding / 2),
],
)),
),
'Flutter > Flutter' 카테고리의 다른 글
Flutter - appBar에 drawer추가 (0) | 2023.09.04 |
---|---|
Flutter - AnimatedTextKit (0) | 2023.09.04 |
Flutter - PageView, 페이지 이동 부드럽게 하기 (0) | 2023.08.30 |
Flutter - Spacer 위젯, 공간 여분 주기 (0) | 2023.08.30 |
Flutter - maxLine으로 높이가 불규칙 할 경우 (0) | 2023.08.30 |