android - 将变量从页面传递到另一个页面。颤振/飞镖
问题描述
我在一个页面中有一些变量,我想在导航时将它传递到另一个页面。带有变量的第一页代码:
int groupValue = -1;
int idButton = 0;
onTap: (){
Navigator.of(context).push(MaterialPageRoute(
builder: (context) => SearchResault(),
settings: RouteSettings(
arguments: {
IdButton,
groupValue
}
)
));
},
问题是每次我得到 {-1,0} 但我想选择我想要接收的内容。
已编辑
这是此处编辑的代码:您可以通过小部件的构造函数传递参数,如下所示:
Navigator.of(context).push(
MaterialPageRoute(builder:
(BuildContext context) =>
SearchResault(idButton: IdButton, groupValue: groupValue),
),
);
然后,您可以定义无状态小部件:
class SearchResault extends StatelessWidget {
final int idButton;
final int groupValue;
const SearchResault({this.idButton, this.groupValue});
@override
Widget build(BuildContext context) {
return Scaffold(
body: Container(
child: Text("${idButton} - ${groupValue}")
);
}
}
解决方案
您可以通过小部件的构造函数传递参数,如下所示:
Navigator.of(context).push(
MaterialPageRoute(builder:
(BuildContext context) =>
SearchResault(idButton: IdButton, groupValue: groupValue),
),
);
然后,您可以定义无状态小部件:
class SearchResault extends StatelessWidget {
final int idButton;
final int groupValue;
const SearchResault({this.idButton, this.groupValue});
@override
Widget build(BuildContext context) {
return Scaffold(
body: Container(
child: Text("${idButton} - ${groupValue}")
);
}
}
推荐阅读
- multithreading - Spring Kafka,在具有多个 ack 的不同线程中手动提交?
- mapbox - 在 NW.js 桌面程序中实现 tileserver-gl?
- python - 如何在 python 中读取 Elasticsearch 快照文件?
- python - Pandas:DataFrame 列表字典,解析 API 响应并正确排列数据
- python - 如何使用 selenium python 重用请求会话?
- javascript - 如何准确比较时间和日期?
- node.js - [NodeJS] MongoDB updateMany 与 pull 运算符不工作
- javascript - 将 JS 函数导入另一个文件
- javascript - js中edit btn的错误操作
- node.js - 使用 SCA 实施具有免费试用期的 Stripe 订阅流程