我正在尝试在颤振中将默认值赋值给DropdownButtonFormField。我正在尝试编辑记录,但无法将默认值赋值给它。
我把workersList作为List。
DropdownButtonFormField<String>(
value: workersList[0]['worker_name'],
decoration: const InputDecoration(
border: OutlineInputBorder(),
labelText: "Payment To",
prefixIcon: Icon(
Icons.phone_android,
color: Colors.blue,
),
),
validator: (value) {
if (value == null) {
return "Please Select Worker";
}
return null;
},
hint: const Text('Select Worker'),
items: workersList.map((Map value) {
return DropdownMenuItem<String>(
value: value['worker_id'].toString(),
child: Text(value['worker_name']),
);
}).toList(),
onChanged: (value) {
_workerController.text = value.toString();
},
),发布于 2022-10-18 11:37:34
由于您将DropDownMenuItem的DropDownMenuItem属性设置为['worker_id'],所以需要设置初始值如下:
DropdownButtonFormField<String>(
value: workersList[0]['worker_id'],
...
)发布于 2022-10-18 12:41:58
您必须将用于DropDownMenuItem的相同属性用作值,因此只需更改该值即可。
DropdownButtonFormField<String>(
value: workersList[0]['worker_name'],
...
)至
DropdownButtonFormField<String>(
value: workersList[0]['worker_id'].toString(),
...
)https://stackoverflow.com/questions/74110278
复制相似问题