Junior — Middle
Tətbiqinizdə AnimationController vasitəsilə animasiyanı necə idarə etmək olar?
sobes.tech Süni İntellekt
AI-dan cavab
Flutter-da animasiyanı idarə etmək üçün AnimationController sinfi istifadə olunur. Bu, animasiyanı başlatmağa, dayandırmağa, təkrarlamağa və irəliləyişini idarə etməyə imkan verir.
Əsas addımlar:
- Widget-in vəziyyətində AnimationController yaradın (adətən initState metodunda), animasiya müddətini və vsync-i göstərin (resursların optimallaşdırılması üçün).
- Kontrollerin metodlarından istifadə edin:
forward(),reverse(),repeat(),stop()animasiyanı idarə etmək üçün. - Animasiya dəyərindəki dəyişikliklərə
addListenervasitəsilə abunə olun və UI-ni yeniləyin. - Resursları sərbəst buraxmağı unutmayın, widget-in
disposemetodundadispose()çağırın.
Nümunə:
class MyAnimatedWidgetState extends State<MyAnimatedWidget> with SingleTickerProviderStateMixin {
late AnimationController _controller;
@override
void initState() {
super.initState();
_controller = AnimationController(
duration: const Duration(seconds: 2),
vsync: this,
)..addListener(() {
setState(() {}); // animasiya dəyişdikcə UI yenilənir
});
_controller.forward(); // animasiyanı başlat
}
@override
void dispose() {
_controller.dispose();
super.dispose();
}
@override
Widget build(BuildContext context) {
return Opacity(
opacity: _controller.value, // 0.0-dan 1.0-ə qədər dəyər
child: YourWidget(),
);
}
}