Sobes.tech
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:

  1. 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.
  2. Gebruik de methoden van de controller: forward(), reverse(), repeat(), stop() om de animatie te beheren.
  3. Abonneer je op veranderingen in de animatiewaarde via een listener (addListener) om de UI bij te werken.
  4. Vergeet niet om de bronnen vrij te maken door dispose() aan te roepen in de dispose-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(),
    );
  }
}