如何在flutter中禁用DropDown

del*_*min 4 dart flutter

如何完全禁用下拉菜单,以便用户无法访问下拉列表并将颜色更改为灰色

DropdownButtonFormField<String>(
      value: selected,
      items: ["Value1", "Value2", "Value3"]
          .map(
            (label) => DropdownMenuItem(
              child: Text(label),
              value: label,
            ),
          )
          .toList(),
      onChanged: (value) {
        setState(() => selected = value);
      },
    )
Run Code Online (Sandbox Code Playgroud)

我厌倦了将 onChange 设置为 null 但整个下拉列表消失了

Lon*_*olf 8

唯一的方法是设置onChange为 null 并设置disabledHint

DropdownButtonFormField<String>(
      style: TextStyle(color: Colors.grey),
      value: selected,
      disabledHint: Text(selected),  //<-set this one
      items: ["Value1", "Value2", "Value3"]
          .map(
            (label) => DropdownMenuItem(
              child: Text(label),
              value: label,
            ),
          )
          .toList(),
      onChanged: null,
//          (value) {
//          setState(() => selected = value);
//        },
    )
Run Code Online (Sandbox Code Playgroud)