Sobes.tech
Junior — Middle

Meg tudod magyarázni a 'állapot' fogalmát a Dart nyelvben, és hogyan használják?

sobes.tech MI

Válasz az MI-től

A Dartban a "state" fogalma a widget vagy alkalmazás állapotára utal — ezek olyan adatok, amelyek idővel változhatnak, és befolyásolják a felhasználói felület megjelenését.

Flutterben két fő típusú widget létezik: StatelessWidget (állapot nélküli) és StatefulWidget (állapotos). A StatefulWidget az állapotát egy State objektumban tárolja, amely változhat, és újrarajzolja a widgetet.

Például egy számláló, amely növekszik a gomb megnyomásakor, az aktuális értékét az állapotban tárolja:

class CounterWidget extends StatefulWidget {
  @override
  _CounterWidgetState createState() => _CounterWidgetState();
}

class _CounterWidgetState extends State<CounterWidget> {
  int _count = 0;

  void _increment() {
    setState(() {
      _count++;
    });
  }

  @override
  Widget build(BuildContext context) {
    return Column(
      children: [
        Text('Count: \\$_count'),
        ElevatedButton(onPressed: _increment, child: Text('Increment')),
      ],
    );
  }
}

Tehát a "state" azok az adatok, amelyek meghatározzák, hogy egy widget hogyan néz ki és hogyan viselkedik, és azok változásakor a UI frissül.