如果这是一个显而易见的解决方案,那么我很擅长dart / flutter如此道歉但我正在尝试基于models属性渲染一个动态数量的Icon。
我正在尝试这样的事情:
Row(
children: <Widget>[
_starsForRatings()
],
)
List<Icon>_starsForRatings() {
List<Icon> stars = [];
for(int i = 0; i < _rating; i++){
stars.add(Icon(Icons.star));
}
return stars;
}
但我收到错误'元素类型列表不能分配给列表类型小部件'这是有道理的,但我想不出另一种方式来呈现它。
谢谢
你快到了。问题是您正在将List打包到另一个列表中。我的意思是_starsForRatings()
已经返回了你需要的清单。在将其分配给Row的children
属性之前,您不需要将该List放入另一个List中。
试试这个:
Row(
children: _starsForRatings(),
)
List<Icon>_starsForRatings() {
List<Icon> stars = [];
for(int i = 0; i < _rating; i++){
stars.add(Icon(Icons.star));
}
return stars;
}