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();
}
}