I have the main/homepage widget of my app, let's call it home.dart
.
Inside this widget, I have defined the drawer key in my Scaffold
widget. The code for the Drawer
object is in a separate file, navdrawer.dart
.
home.dart
import 'navdrawer.dart';
. . .
@override
Widget build(BuildContext context) {
return Scaffold(
drawer: NavDrawer(),
...
Now inside NavDrawer
, I construct my Drawer
widget which has a settings button, which links to the settings.dart
screen.
Which I do like this:
navdrawer.dart
. . .
InkWell(
onTap: () async {
final result = await Navigator.push(
context,
MaterialPageRoute(builder: (context) => Settings()),
);
print(result);
},
child: ListTile(
leading: Icon(
Icons.settings,
color: AppTextColor,
),
title: Text('Settings'))),
So now, when the user presses the back button on the settings page, the Navigator.pop()
call will return the data I need to the result
variable in navdrawer.dart
.
But my problem is ... how do I get this data to my home.dart
screen/state?