Flutter 下拉按钮错误:无法将参数类型“void Function(String)”分配给参数类型“void Function(String?)”?

时间:2021-07-13 06:45:32

标签: string flutter dropdown

我正在尝试为我的 flutter 应用程序使用下拉菜单,但我总是收到错误

<块引用>

无法将参数类型“void Function(String)”分配给参数类型“void Function(String?)?”。

Widget _lineOfBusinessRow(){
return Container(
   width: MediaQuery.of(context).size.width,
  child: Column(
    mainAxisAlignment: MainAxisAlignment.center,
    children: [
      DropdownButton<String>(
        value: _lineOfBusinessValue,

        onChanged: (String value){
          setState(() {
            _lineOfBusinessValue = value;
          });
        },

        items: _lineOfBusinessItems.map<DropdownMenuItem<String>>((value){
          return DropdownMenuItem(child: Text(value),
          value: value);
        }).toList(),
      )
    ],
  )
);

}

这是我目前的代码,这是错误的屏幕截图:

Error Message

除此之外,我也试过这样做:

onChanged: (String? value){
          setState(() {
            _lineOfBusinessValue = value!;
          });
        },

如果我删除字符串或问号,系统会提示我向“值”添加空检查并导致此错误:

Error Message

1 个答案:

答案 0 :(得分:0)

IT 在飞镖垫上运行良好。您是否启用了空安全等

https://dartpad.dev/?id=09ff2fd78405f736d63cab4de22f4eec