我有两个文本控制器,我想将两个文本控制器的数据从第二页传递到主屏幕,现在我的代码可以很好地使用一个变量,但是我如何传递多个变量并使用它们。
Container(
margin: EdgeInsets.only(top:30),
child:RaisedButton(
onPressed: (){
Navigator.pop(context, titleController.text); //i want to pass multiple controllers here
print(titleController.text);
},
child: Text("Submit"),
),
),
用途:这是我使用返回数据的方式。对于一个文本字段,它工作正常,但我希望通过多个字段。
_navigateAndDisplaySelection(BuildContext context) async {
final result = await Navigator.push(
context,
MaterialPageRoute(builder: (context) => SecondScreen()),
);
varlistSection.insert(0,
listSectionMethod("$result", "hello from click", Icons.forward), //result contains one text field data, i want to use it for more
);
setState(() {});
}
List<String> list = new List<String>();
list.add(titleController.text);
list.add(detailController.text);
Navigator.pop(context, list);
然后在首页功能中使用它,
_navigateAndDisplaySelection(BuildContext context) async { final result = await Navigator.push(context, MaterialPageRoute(builder: (context) => SecondScreen()), ); varlistSection.insert(0, listSectionMethod(result[0], result[1], Icons.forward), //index would be for the data you wanna use ); setState(() {}); }