我在 Flutter 框架上实现了一个应用程序。我是颤振新手,我不知道如何将数据传递到新屏幕。有人告诉我你应该在你的应用程序中使用命名路由,所以我尝试了它。但现在我不知道如何将数据从一个屏幕传递到另一个屏幕。
这些是我的 MaterialApp 中的路线:
routes: {
'/': (context) => FirstPage(),
'/second': (context) => SecondPage(),
'/third': (context) => ThirdPage(),
},
这就是我通常导航到新屏幕的方式:
onPressed: () {
Navigator.pushNamed(context, '/second');
},
我想在导航到新屏幕时将数据传递到新屏幕。
您只需要传递参数即可。首先在您想要传递数据的文件中提取参数,如下所示:
final args = ModalRoute.of(context)!.settings.arguments as Map<String, dynamic>;
final data = args['data'];
return Scaffold(
body: Center(
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: [
Text('$data'),
],
),
),
);
现在您浏览页面的位置只需传递如下参数:
Navigator.pushNamed(context, '/second',
arguments: {'data': 'Data from previous screen'});
一切就绪。我希望这可以帮助你。快乐编码...