如何在 flutter 中更改 dropdownButton 的默认值?

How to change default value of dropdownButton in flutter?

我正在 flutter 中创建一个下拉按钮,但我遇到了问题 当我使用下拉菜单时,它会显示 第一项 的名称,但我想将其(默认值)更改为 类别 并且我不知道该怎么做,我也尝试使用提示(如您在代码中看到的那样)但它没有用。 这是我的代码:

Container(
            height: pageHeight / 15,
            padding: EdgeInsets.all(20),
            child:DropdownButton(
                value: _value,
                items: const [
                  DropdownMenuItem(
                    child: Text("First Item"),
                    value: 1,
                  ),
                  DropdownMenuItem(
                    child: Text("Second Item"),
                    value: 2,
                  ),
                ],
                onChanged: (value) {
                  setState(() {
                    _value = value as int ;
                  });
                },
                hint:Text("Select item")
            ),
          )

我想将此第一项更改为类别

只需在 initState() 上赋值

selectedDropDownValue = "类别";

Container(
            height: pageHeight / 15,
            padding: EdgeInsets.all(20),
            child:DropdownButton(
                value: _value,
                items: const [
                  DropdownMenuItem(
                    child: Text("First Item"),
                    value: 1,
                  ),
                  DropdownMenuItem(
                    child: Text("Second Item"),
                    value: 2,
                  ),
                ],
                value: selectedDropDownValue, 
                onChanged: (value) {
                  setState(() {
                    selectedDropDownValue = value;
                  });
                },
                hint:Text("Select item")
            ),
          )

使值可以为空。 DropdownButton 可以有空值,当它为空时它将显示 hint 小部件。

  int? _value;
DropdownButton(
                  value: _value,
                  items: const [
                    DropdownMenuItem(
                      child: Text("First Item"),
                      value: 1,
                    ),
                    DropdownMenuItem(
                      child: Text("Second Item"),
                      value: 2,
                    ),
                  ],
                  onChanged: (value) {
                    setState(() {
                      _value = value as int;
                    });
                  },
                  hint: Text("categories"),
                ),