Junior — Middle
Can you explain the concept of StateWidget and how it is used in development?
sobes.tech AI
Answer from AI
A StatefulWidget in Flutter is a widget that holds a state that can change during the widget's lifetime. Unlike StatelessWidget, which is immutable, StatefulWidget allows updating the interface when data changes.
Main points:
- StatefulWidget consists of two classes: the widget itself and its state (State).
- The State class contains state variables and a build method that constructs the UI.
- When the state changes, setState() is called, which triggers a rebuild of the widget.
Example usage:
class CounterWidget extends StatefulWidget {
@override
_CounterWidgetState createState() => _CounterWidgetState();
}
class _CounterWidgetState extends State<CounterWidget> {
int _counter = 0;
void _increment() {
setState(() {
_counter++;
});
}
@override
Widget build(BuildContext context) {
return Column(
children: [
Text('Counter: \\$_counter'),
ElevatedButton(onPressed: _increment, child: Text('Increase')),
],
);
}
}
Thus, StatefulWidget is used when you need to track and update data in the UI.