Junior — Middle
Εξηγήστε τα στάδια ζωής του στοιχείου widget κατά τη χρήση και την απενεργοποίησή του.
sobes.tech AI
Απάντηση από AI
Ο κύκλος ζωής ενός widget στο Flutter περιλαμβάνει αρκετά στάδια:
- Δημιουργία (create): καλείται ο κατασκευαστής του widget, δημιουργείται η παρουσίασή του.
- Αρχικοποίηση κατάστασης (initState): καλείται σε ένα StatefulWidget, εδώ μπορείτε να αρχικοποιήσετε δεδομένα και συνδρομές.
- Κατασκευή (build): καλείται για να σχεδιάσει το widget στην οθόνη, μπορεί να καλείται πολλές φορές όταν αλλάζει η κατάσταση.
- Ενημέρωση (didUpdateWidget): καλείται όταν το γονικό widget ενημερώνεται και περνάει νέες παραμέτρους.
- Απενεργοποίηση (deactivate): καλείται πριν από την αφαίρεση του widget από το δέντρο, εδώ μπορείτε να ελευθερώσετε πόρους.
- Διαγραφή (dispose): καλείται κατά την οριστική διαγραφή του widget, εδώ πρέπει να ακυρώσετε συνδρομές, χρονοδιακόπτες και να καθαρίσετε ελεγκτές.
Παράδειγμα χρήσης:
class MyWidget extends StatefulWidget {
@override
_MyWidgetState createState() => _MyWidgetState();
}
class _MyWidgetState extends State<MyWidget> {
@override
void initState() {
super.initState();
// Αρχικοποίηση
}
@override
Widget build(BuildContext context) {
return Container();
}
@override
void dispose() {
// Απελευθέρωση πόρων
super.dispose();
}
}