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.