Junior — Middle
Comment gérer l'animation via AnimationController dans votre application?
sobes.tech IA
Réponse de l'IA
En Flutter, la classe AnimationController est utilisée pour gérer l'animation. Elle permet de démarrer, arrêter, répéter et contrôler la progression de l'animation.
Étapes principales:
- Créez un AnimationController dans l'état du widget (généralement dans la méthode initState), en spécifiant la durée de l'animation et vsync (pour optimiser les ressources).
- Utilisez les méthodes du contrôleur :
forward(),reverse(),repeat(),stop()pour gérer l'animation. - Abonnez-vous aux changements de valeur de l'animation via un écouteur (
addListener) pour mettre à jour l'interface utilisateur. - N'oubliez pas de libérer les ressources en appelant
dispose()dans la méthodedisposedu widget.
Exemple:
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(() {}); // met à jour l'UI lors du changement d'animation
});
_controller.forward(); // démarre l'animation
}
@override
void dispose() {
_controller.dispose();
super.dispose();
}
@override
Widget build(BuildContext context) {
return Opacity(
opacity: _controller.value, // valeur de 0.0 à 1.0
child: YourWidget(),
);
}
}