Я не уверен, что initState
- это правильная функция для этого. То, что я пытаюсь достичь, - проверить, когда страница отображается для выполнения некоторых проверок, и на основе их открытия AlertDialog
чтобы при необходимости внести некоторые настройки.
У меня есть Страница, в которой есть состояние. Функция initState
выглядит так:
@override
void initState() {
super.initState();
if (!_checkConfiguration()) {
_showConfiguration(context);
}
}
_showConfiguration
:
void _showConfiguration(BuildContext context) {
AlertDialog dialog = new AlertDialog(
content: new Column(
children: <Widget>[
new Text('@todo')
],
),
actions: <Widget>[
new FlatButton(onPressed: (){
Navigator.pop(context);
}, child: new Text('OK')),
],
);
showDialog(context: context, child: dialog);
}
Если есть лучший способ сделать эти проверки и, если нужно, вызвать модальный, пожалуйста, укажите мне в правильном направлении, я искал функцию onState
или onRender
или обратный вызов, который я мог бы назначить функции build
которая будет вызываться в рендеринге, но не смог найти его.
Редактировать: он швы здесь, у них была аналогичная проблема: Flutter Redirect на страницу в initState