【问题标题】:Flutter Dropdown Button error: The argument type 'void Function(String)' can't be assigned to the parameter type 'void Function(String?)?Flutter Dropdown Button错误:参数类型'void Function(String)'不能分配给参数类型'void Function(String?)?
【发布时间】:2021-07-13 06:45:32
【问题描述】:

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

参数类型“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(),
      )
    ],
  )
);

}

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

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

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

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

【问题讨论】:

    标签: string flutter dropdown


    【解决方案1】:

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

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

    【讨论】:

    • 我正在使用 Android Studio,但已将其禁用。我应该启用它吗?
    猜你喜欢
    • 2021-10-22
    • 1970-01-01
    • 2023-04-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-28
    • 1970-01-01
    相关资源
    最近更新 更多