Junior — Middle
Explica el concepto de StatefulWidget en Flutter y en qué se diferencia de StatelessWidget?
sobes.tech AI
Respuesta de la IA
En Flutter, StatefulWidget es un widget que puede cambiar su estado durante la ejecución de la aplicación. Guarda su estado en un objeto separado State, y cuando este estado cambia, se llama al método setState(), que actualiza la interfaz.
En contraste, StatelessWidget no tiene estado interno y siempre se construye en función de los parámetros que se le pasan. No cambia después de su creación.
Ejemplo:
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('Contador: \\$_counter'),
ElevatedButton(onPressed: _increment, child: Text('Incrementar')),
],
);
}
}
Aquí, CounterWidget es un StatefulWidget porque el valor del contador cambia y afecta la UI. Si el estado no cambiara, se podría usar un StatelessWidget.