Junior — Middle
Hoe beheer je de animatie via AnimationController in je applicatie?
sobes.tech AI
Antwoord van AI
In Flutter wordt de klasse AnimationController gebruikt om de animatie te beheren. Het stelt je in staat om de animatie te starten, stoppen, herhalen en de voortgang te controleren.
Belangrijke stappen:
- Maak een AnimationController aan in de toestand van de widget (meestal in de initState-methode), waarbij je de duur van de animatie en vsync (voor resource-optimalisatie) specificeert.
- Gebruik de methoden van de controller:
forward(),reverse(),repeat(),stop()om de animatie te beheren. - Abonneer je op veranderingen in de animatiewaarde via een listener (
addListener) om de UI bij te werken. - Vergeet niet om de bronnen vrij te maken door
dispose()aan te roepen in dedispose-methode van de widget.
Voorbeeld:
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(() {}); // update de UI bij animatieverandering
});
_controller.forward(); // start de animatie
}
@override
void dispose() {
_controller.dispose();
super.dispose();
}
@override
Widget build(BuildContext context) {
return Opacity(
opacity: _controller.value, // waarde van 0.0 tot 1.0
child: YourWidget(),
);
}
}