【发布时间】:2020-09-09 13:45:48
【问题描述】:
我有一个我想使用单个小部件创建的配置文件字段列表,但我是 Flutter 的新手,似乎无法解决一件事:通过参数传递变量。我已经能够使用this.variable = value 创建许多工作正常的小部件,但现在我正试图将其转换为单个小部件以免重复自己,这就是我遇到问题的地方。
我有以下代码(当然删除了所有我认为不必要的代码)。这里目前显示错误The setter 'listType' isn't defined for the class '_ProfileDataState'.
class _ProfileDataState extends State<ProfileData> {
final _countries = DropDownLists.countries;
String _country;
var listType; //<-- added this per comments
Widget profileDropDown(var list, var listType) {
return Card(
onTap: () async {
AlertDialog(
content: DropdownButtonFormField<String>(
isExpanded: true,
items: list.map((String value) {
return DropdownMenuItem<String>(
value: value,
child: Text(value),
);
}).toList(),
isDense: true,
value: listType,
onChanged: (value) {
FocusScope.of(context).requestFocus(FocusNode());
setState(() {
this.listType = value;
});
},
)
)
}
)
}
@override
Widget build(BuildContext context) {
return profileDropDown(_countries, _country),
...
【问题讨论】:
标签: function class flutter variables dart