gpt4 book ai didi

dart - 如何在Flutter中将非字符串数据传递到命名路由?

转载 作者:行者123 更新时间:2023-12-03 04:02:04 24 4
gpt4 key购买 nike

我有很多屏幕,并且正在使用Navigator。我想使用“命名路由”,但我还需要将非字符串(例如图像)传递给我的下一条路由。

我无法使用pushNamed(),因为我无法将非字符串数据传递给它。

如何使用命名路由+发送非字符串数据?

最佳答案

编辑:

现在可以将复杂的参数传递给Navigator.pushNamed:

String id;
Navigator.pushNamed(context, '/users', arguments: id);

然后可以在 onGenerateRoute中使用它,通过以下参数来自定义路由构建:
MaterialApp(
title: 'Flutter Hooks Gallery',
onGenerateRoute: (settings) {
final arguments = settings.arguments;
switch (settings.name) {
case '/users':
if (arguments is String) {
// the details page for one specific user
return UserDetails(arguments);
}
else {
// a route showing the list of all users
return UserList();
}
default:
return null;
}
},
);

关于dart - 如何在Flutter中将非字符串数据传递到命名路由?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54940160/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com