有没有办法始终在 DropDownButton 中显示提示?

Hap*_*plo 6 flutter

例如,在 TextField 中,可以设置带有标签文本的 InputDecoration,当没有用户输入时,该标签文本显示在 TextField 的中心,然后显示在用户输入文本的上方。

使用 DropDownButton,我似乎只能在用户做出选择之前显示提示文本,然后它消失并仅显示用户的选择。有没有办法模仿 TextField 的行为?

谢谢!

Dar*_*han 15

您可以使用DropDownButtonFormFieldwidget 而不是 来实现这一点DropDownButtonDropDownButtonFormField具有decoration属性,可让您labelText在从列表中选择项目后使用超出字段顶部的属性。下面的示例工作代码:

return DropdownButtonFormField<String>(
      decoration: InputDecoration(
        labelText: 'select option'
      ),

      value: selected,
      items: ["A", "B", "C"]
          .map((label) => DropdownMenuItem(
                child: Text(label),
                value: label,
              ))
          .toList(),
      onChanged: (value) {
        setState(() => selected = value);
      },
    );
Run Code Online (Sandbox Code Playgroud)

输出:

在此输入图像描述

在此输入图像描述

希望这能回答您的问题。