Я хочу вернуть состояние FutureBuilder
из задачи asyn c во время ее выполнения.
Задача - carProvider.run()
.
В настоящее время, пока ожидает завершения задачи sh, есть CircularProgressIndicator
с текстом под ним, который отображает строку сообщения.
И я хочу постоянно обновлять эту строку сообщения.
class CarDealerStatefulWidgetState extends State<CarDealerStatefulWidget> {
String _message = "Initialising database and fetching data...";
set setMessage(String message) => setState(() {
_message = message;
});
String get getMessage => _message;
static CarDataProvider carProvider = CarDataProvider();
Future<List<Car>> _requestResult = carProvider.run();
List<Car> items;
String path;
var currentPage;
Widget build(BuildContext context) {
PageController controller;
return DefaultTextStyle(
style: Theme.of(context).textTheme.headline2,
textAlign: TextAlign.center,
child: FutureBuilder<List<Car>>(
future: _requestResult,
builder: (BuildContext context, AsyncSnapshot<List<Car>> snapshot) {
Widget child;
if (snapshot.hasData) {
//
} else if (snapshot.hasError) {
child = Icon(
Icons.error_outline,
color: Colors.red,
size: 60,
);
} else {
child = Column(
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
CircularProgressIndicator(
valueColor: AlwaysStoppedAnimation<Color>(Colors.green),
),
Padding(
padding: const EdgeInsets.only(top: 20.0),
),
Text(getMessage,
style: TextStyle(
fontSize: 13,
))