移至另一个屏幕时,如何使下拉列表保持最后选择的选项不显示

时间:2019-12-10 08:04:53

标签: forms flutter dart drop-down-menu

我的Flutter应用中有这些过滤器 我需要一种方法来保留最后选择的选项 drop down list

Ddl(
    name: 'Type',
    initialValue: _type,
    onSelect: (str) {
        setState(() {
            _type = str;
        });
    },
)

这是我的ddl代码

DropdownButton<String>(
        isExpanded: true,
        value: selectedValue,
        icon: Icon(Icons.arrow_downward),
        iconSize: 24,
        elevation: 16,
        style: TextStyle(color: Colors.black),
        underline: Container(
          height: 2,
          color: Colors.black,
        ),
        onChanged: (String newValue) {
          setState(() {
            selectedValue = newValue;
          });
          widget.onSelect(newValue);
        },
        items: _getList(this.widget.name),
      ),

1 个答案:

答案 0 :(得分:0)

在屏幕上保留值的一种方法是将它们保留在带有带有getter和setter的静态变量的类中。每次下拉值更改时,您还要设置此静态变量。屏幕加载后,您将读取这些值并初始化小部件。

class dropDownModel {
  static int last_selected_value;

  static int get_last_selected_value() {
    return last_selected_value;
  }

  static void set_last_selected_value(int Value) {
    last_selected_value = Value;
    return null;
  }
}