如何在flutter中访问下拉列表所选值并在另一个小部件中使用它



这是我的下拉列表代码

String dropdownValue = "a";
@override
Widget build(BuildContext context) {
return DropdownButton<String>(
value: dropdownValue
),
onChanged: (String? newValue) { 
setState(() {
dropdownValue = newValue!;
});
},
items: <String>[
'a','b','c'
].map<DropdownMenuItem<String>>((String value) {
return DropdownMenuItem<String>(
value: value,
child: Text(value),
);
}).toList(),
);
}
}

我想在这里使用选定的值

uploadDatatoFirebase() async {
*firebase connection code*
await FirebaseFirestore.instance
.collection(**selected value in drop down**) // the value from the box goes here

}

我似乎找不到解决方案,请帮助我想创建一个数据库取决于选择框的值,任何其他技术也将受到欢迎

https://pub.dev/packages/get_it这是我使用的包,所以我可以在应用程序的任何地方访问一个类的单个实例,它非常受欢迎,维护得很好。你可以这样做

setState(() {
dropdownValue = newValue!;
GetIt.I.get<ControllerWhatever>().selectedValueInDropDown = newValue!;
})

只要注册'全局控制器实例',就像get_it页面中描述的那样,你就可以从应用程序中任何地方的任何属性中获得值。它会让你的生活更轻松。

相关内容

最新更新