Stateful
Inicialmente, parece ser tão simples quando o Stateless widget, quando criamos nosso widget, o Flutter chama o seu construtor e em seguida o método createState().
import 'package:flutter/material.dart';
class MeuWidgetMutavel extends StatefulWidget {
_MeuWidgetMutavelState createState() => _MeuWidgetMutavelState();
}
class _MeuWidgetMutavelState extends State<MeuWidgetMutavel> {
Widget build(BuildContext context) {
return const Text('Eu terei meu estado alterado');
}
}
- O uso do "_" torna o widget privado para o escopo da biblioteca em que ele se encontra;
- O uso de "=>" indica que este método executa apenas 1 função.
Mas não se engane, pois a diferença não é apenas no nome dos métodos. Lembre-se que ao criar um objeto do tipo State, um Stateful widget ganha poderes mutáveis?! Então, é dentro dele que a mágica acontece.
Nosso MeuWidgetMutavel
ao ser construído pelo framework, executa o método createState()
(linha 5) e este por sua vez, executa apenas 1 função, que é instanciar _MeuWidgetMutavelState
. Ele é um filho de State, logo, herda algumas características e comportamentos (linha 8).