Я пытаюсь создать отдельный виджет Stateful для страницы сетевых ошибок, но я застрял в том, как обновить логический флаг, который находится внутри welcome.dart через networkerror.dart
NetworkError.dart
class NetworkError extends StatefulWidget {
@override
State<StatefulWidget> createState() {
return NetworkErrorState() ;
}
}
class NetworkErrorState extends State<NetworkError>{
@override
Widget build(BuildContext context) {
return Container(
child: Center(
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
Image.asset('assets/no_network.png'),
RaisedButton(
color: Color(0xff7F00FF),
child: Text(
'Retry',
style: TextStyle(
color: Colors.black, letterSpacing: 2.0, fontSize: 15.0),
),
onPressed: () {
NetworkUtil().netcheck(context).then((result) {
if (result) {
WelcomePage().createState().isConnected=true;
} else {
WelcomePage().createState().isConnected=false;
}
});
},
)
],
)),
);
}
}
Welcome.dart
@override
Widget build(BuildContext context) {
return Scaffold(
drawer: Drawer(
child: ListView(
children: drawerWidgets(),
),
),
key: _scaffoldKey,
body: isConnected
? isLoading
? showSpinner()
: Container(
child: Center(
child: ListView(
shrinkWrap: true,
children: <Widget>[
Center(
child: Container(
padding: const EdgeInsets.all(16.0),
child: Form(
child: Column(
crossAxisAlignment:
CrossAxisAlignment.stretch,
children: submitWidgets(context),
),
),
),
)
],
),
),
)
: NetworkError(),
),
);
}
}
Я хочу обновить логический флаг isConnected из network.dart в значение true, когда сетевые данные доступны. Извините, если не сделал это проще. Thanx