我正在编写一个项目,想要添加一个 DropDownButton,但一旦添加 onCnange 事件,它总是返回错误。下拉菜单总是返回错误。我不知道这是怎么回事。
@override
Widget build(BuildContext context) {
return Material( child: Column( children: [
DropdownButton(items: [], value: dropdownValue, onChanged: (String value) {
setState(() {
dropdownValue = value;
});
},)
], ), );
}
错误信息
The argument type 'void Function(String)' can't be assigned to the parameter type 'void Function(Object?)?'.
最佳答案
函数和值可能可为 null,因此请从回调中删除 String
类型或使用可为 null 的类型。
解决方案1
DropdownButton<String>(
items: [],
value: dropdownValue,
onChanged: (value) {
setState(() {
dropdownValue = value;
});
},
)
解决方案2
DropdownButton<String>(
items: [],
value: dropdownValue,
onChanged: (String? value) {
setState(() {
dropdownValue = value;
});
},
)
关于Flutter DropdownButton 返回 onChange 事件错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67848133/