[flutter] CurvedAnimation을 이용한 곡선 형태의 애니메이션 구현하기
애니메이션은 사용자 경험을 향상시키고 앱의 시각적 효과를 향상시키는 데 중요합니다. Flutter 프레임워크는 CurvedAnimation을 사용하여 요소들이 곡선 형태로 움직이는 인상적인 애니메이션을 쉽게 구현할 수 있습니다.
CurvedAnimation
CurvedAnimation은 다양한 곡선을 사용하여 애니메이션을 제어하는 데 사용됩니다. 이를 통해 초기 속도, 끝 속도, 지속 시간 등을 조절할 수 있습니다.
CurvedAnimation은 항상 Animation Controller와 함께 사용됩니다. Animation Controller를 생성하고 CurvedAnimation을 통해 원하는 곡선을 설정할 수 있습니다.
다음은 CurvedAnimation을 사용하여 간단한 곡선 형태의 애니메이션을 구현하는 예제입니다.
import 'package:flutter/material.dart';
void main() => runApp(MyApp());
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
final controller = AnimationController(
vsync: this,
duration: Duration(seconds: 2),
);
final animation = CurvedAnimation(
parent: controller,
curve: Curves.easeIn,
);
final sizeAnimation = Tween<double>(begin: 100, end: 200).animate(animation);
return MaterialApp(
home: Scaffold(
appBar: AppBar(title: Text('Curved Animation')),
body: Center(
child: AnimatedBuilder(
animation: controller,
builder: (context, child) {
return Container(
width: sizeAnimation.value,
height: sizeAnimation.value,
color: Colors.blue,
);
},
),
),
floatingActionButton: FloatingActionButton(
onPressed: () {
controller.forward();
},
child: Icon(Icons.play_arrow),
),
),
);
}
}
위 예제는 간단한 앱을 만들고, 플로팅 액션 버튼을 클릭하면 컨테이너의 크기가 곡선 형태로 변하는 애니메이션을 보여줍니다.
위 예제 결과는 다음과 같습니다.
결론
CurvedAnimation을 사용하면 Flutter 앱에서 곡선형 애니메이션을 간단하게 구현할 수 있습니다. 이를 통해 사용자에게 더 흥미로운 시각적 경험을 제공할 수 있습니다.
더 많은 정보를 찾으려면 Flutter 애니메이션 공식 문서를 참조하세요.