为什么setState函数不使用下拉
我在扑来的落下序幕,绘制了地图< string,int>作为价值列表。但是setState不起作用。我又做错了什么
Map<String, int> grades = {
"AA": 5,
"BB": 4,
};
int val=5;
@override
Widget build(BuildContext context) {
return Scaffold(
body: DropdownButton<int>(
value: grades["AA"],
onChanged: (newVal){
setState((){
if(newVal!=null){ val=newVal;}
});
},
items: grades
.map((key, value) {
return MapEntry(
key,
DropdownMenuItem<int>(
value: value,
child: Text(key),
));
})
.values
.toList(),
));
I made a dropdown in flutter that takes a Map<String, int> as a list of values.But setState doesnt work.What am i doing wrong again
Map<String, int> grades = {
"AA": 5,
"BB": 4,
};
int val=5;
@override
Widget build(BuildContext context) {
return Scaffold(
body: DropdownButton<int>(
value: grades["AA"],
onChanged: (newVal){
setState((){
if(newVal!=null){ val=newVal;}
});
},
items: grades
.map((key, value) {
return MapEntry(
key,
DropdownMenuItem<int>(
value: value,
child: Text(key),
));
})
.values
.toList(),
));
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
dropdownbutton
value是硬编码(value:等级[“ aa”],
),替换为
DropdownButton
value is hard-coded(value: grades["AA"],
), replaceWith