Junior — Middle
Kako upravljati animacijom putem AnimationController u vašoj aplikaciji?
sobes.tech АИ
Одговор од АИ
U Flutter-u, klasa AnimationController se koristi za upravljanje animacijom. Ona omogućava pokretanje, zaustavljanje, ponavljanje i kontrolu napretka animacije.
Glavni koraci:
- Kreirajte AnimationController u stanju widget-a (obično u metodi initState), navodeći trajanje animacije i vsync (za optimizaciju resursa).
- Koristite metode kontrolera:
forward(),reverse(),repeat(),stop()za upravljanje animacijom. - Pretplatite se na promene vrednosti animacije putem slušaoca (
addListener) da biste ažurirali UI. - Ne zaboravite da oslobodite resurse pozivom
dispose()u metodidisposewidget-a.
Primer:
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(() {}); // ažurira UI pri promeni animacije
});
_controller.forward(); // pokreće animaciju
}
@override
void dispose() {
_controller.dispose();
super.dispose();
}
@override
Widget build(BuildContext context) {
return Opacity(
opacity: _controller.value, // vrednost od 0.0 do 1.0
child: YourWidget(),
);
}
}