选择选项在选择更改后不显示新值
选择选项在选择更改后不显示新值
我在选择选项后无法显示值,它总是显示全部类型。我按照这个答案来操作,但仍然遇到问题。
DropdownButton(
hint: Text('筛选全部类型'),
value: _typeDataL,
onChanged: (_newValue) {
setState(() {
_typeDataL = _newValue;
// print(typeDataL);
});
print(_newValue);
},
items: typeDataL.map((value) {
return DropdownMenuItem(
value: value,
child: new Text(value),
);
}).toList(),
),
问题原因:问题出现的原因是valueList中的初始值与selectedValue的初始值不一致,且valueList中包含重复的值。
解决方法:将valueList中的初始值改为与selectedValue的初始值一致,并确保valueList中没有重复的值。
以下是修复后的代码示例:
String? selectedValue = "Your init value";
var typeDataL = ["Your init value", "Option1", "Option2", "Option3"];
DropdownButton(
hint: const Text('Filter All Type'),
value: selectedValue,
onChanged: (newValue) {
setState(() {
selectedValue = newValue;
});
},
items: typeDataL.map((value) {
return DropdownMenuItem(
value: value,
child: Text(value),
);
}).toList(),
),
修复后的代码中,将valueList中的初始值修改为与selectedValue的初始值一致,确保两者一致。另外,valueList中的值也不包含重复的值。这样就能解决问题,选择不同的选项后,下拉菜单能够正确显示新的值。