setState() called after dispose()
Just check boolean property mounted of the state class of your widget before calling setState(). if (this.mounted) { setState(() { // Your state change code goes here }); } Or even more clean approach Override setState method in your StatelfulWidget class. class DateTimeButton extends StatefulWidget { @override void setState(fn) { if(mounted) { super.setState(fn); } } … Read more