类型"列表"<Widget>不是小部件动态属性中"小部件"类型的子类型



我有这个代码:

child: Column(
children: [
Text(i.description),
i.colors.map<Widget>(
(colours) => CheckboxListTile(
title: Text(colors),
value: i[colors],
onChanged: (colors){
setState(() {
i[colors] = colors;
});
},
).toList()
],
)

我想显示每个对象中每种颜色的复选按钮,但它抛出了这个错误:

键入'List<小工具>'不是"Widget"类型的子类型

如何修复它?

您得到错误是因为Column.children需要一个"simple"数组。但是您给出了一个带有Text的数组和另一个数组(i.colors.map<>(___).toList()(,所以您得到了错误。

在列表前添加排列运算符...,它将打开它:

child: Column(
children: [
Text(i.description),
...i.colors.map<Widget>(
(colours) => CheckboxListTile(
title: Text(colors),
value: i[colors],
onChanged: (colors){
setState(() {
i[colors] = colors;
});
},
).toList()
],
)

相关内容

最新更新