В моем демонстрационном приложении мне нужно загрузить с сервера 2 файла JSON. Оба JSON содержат большие данные. В своем приложении Flutter я вызываю json с помощью Future + async + await, чем вызываю для создания виджета с помощью runApp. В теле пытаюсь активировать CircularProgressIndicator. Он показывает appBar и его содержимое, а также пустое белое тело страницы, а через 4 или 5 секунд загружает данные в фактическом теле.
Мой вопрос: сначала мне нужно показать CircularProgressIndicator, а после загрузки данных я вызову runApp (). Как я могу это сделать?
// MAIN
void main() async {
_isLoading = true;
// Get Currency Json
currencyData = await getCurrencyData();
// Get Weather Json
weatherData = await getWeatherData();
runApp(new MyApp());
}
// Body
body: _isLoading ?
new Center(child:
new CircularProgressIndicator(
backgroundColor: Colors.greenAccent.shade700,
)
) :
new Container(
//… actual UI
)