在开发中,有时候会有点击去其他页面选择选项后并返回来,返回来的时候还要携带参数
DemoPapel页面:
跳转到选择页面的方法如下:
SelectPerson为需要跳转的页面路由名称,arguments放的是携带过去的参数。then方法那里接收SelectPerson页面返回的参数。
Navigator.of(context).pushNamed('SelectPerson', arguments: {
"name": "静静"
}).then((data) {
//接受返回的参数
var initData = data as Map;
personList = initData["personList"];
// 重新渲染页面
build(context);
});
SelectPerson页面:
接收DemoPapel页面传过来的参数,写在build方法里面:
String name;
dynamic obj = ModalRoute.of(context).settings.arguments;
if (obj != null) {
name = obj["name"];
}
返回上一页面并携带参数的代码如下:
pop方法返回上一页面,并返回参数
List personList = [
{
'name': '人物1'
},
{
'name': '人物2'
},
{
'name': '人物3'
},
];
Navigator.of(context).pop({"personList": personList});
|