A stateful widget is implemented by two classes: a subclass of StatefulWidget and a subclass of State . The state class contains the widget’s mutable state and the widget’s build() method. When the widget’s state changes, the state object calls setState() , telling the framework to redraw the widget.