我有一份清单
final List<String> entries = <String>['Life', 'Car', 'Car'];然后,我尝试生成3个小部件,每个小部件都有一个图标,具体取决于具有我尝试过的数组的值
children:<Widget>[
Icon(
entries=='Life'? Icons.favorite_border:Icons.directions_car,
color: Colors.white,
textDirection: TextDirection.ltr,
size:50,
),但是所有的小部件都使用favorite_border图标,而不是在directions_car和favorite_border之间混用。
发布于 2019-12-16 10:26:11
条目是一个列表,您不能将其与字符串进行比较。使用条目列表中的映射将其生成为图标列表。
列表图标= Icons.favorite_border,Icons.directions_car,...
entries.map<Icon>((String entry) {
return Icon(
icons[entries.indexOf(entry)],
color: Colors.white,
textDirection: TextDirection.ltr,
size:50,
)
});发布于 2019-12-16 10:29:50
您可以尝试验证数组中的每一项。如下所示:
children: <Widget>[
...entries.map(
(icon) => Icon(
icon == 'Life' ? Icons.favorite_border : Icons.directions_car,
),
)
],https://stackoverflow.com/questions/59349719
复制相似问题