Sobes.tech
Junior — Middle

آیا StateWidget مراحل چرخه زندگی در عملکرد خود دارد؟

sobes.tech AI

Ҷавоб аз AI

Бале, дар Flutter, дар StateWidget марҳилаҳо дар давраи ҳаёти он мавҷуданд. Методҳои асосии давраи ҳаёти State инҳоянд:

  • initState() — як бор дар вақти эҷоди State даъват мешавад, барои оғоз кардан истифода мешавад.
  • didChangeDependencies() — пас аз initState() ва вақте ки вобастагиҳо тағир меёбанд, даъват мешавад.
  • build() — ҳар вақте ки лозим аст, ки widget-ро расмӣ кунад, даъват мешавад.
  • setState() — усул барои навсозии ҳолат ва дубора расмӣ кардани он.
  • deactivate() — вақте ки widget аз дарахт хориҷ мешавад, даъват мешавад, аммо State метавонад дубора истифода шавад.
  • dispose() — вақте ки дар ниҳоят State хориҷ мешавад, даъват мешавад, барои тозакунии захираҳо.

Масалан:

class MyWidget extends StatefulWidget {
  @override
  _MyWidgetState createState() => _MyWidgetState();
}

class _MyWidgetState extends State<MyWidget> {
  @override
  void initState() {
    super.initState();
    // Оғоз
  }

  @override
  void dispose() {
    // Тозакунии захираҳо
    super.dispose();
  }

  @override
  Widget build(BuildContext context) {
    return Container();
  }
}