如果这是一个显而易见的解决方案,那么我对飞镖/打颤器还是很陌生的,所以道歉,但是我正在尝试基于models属性动态渲染图标。
我正在尝试这样的事情:
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分配给列表类型Widget”,但是我想不出另一种呈现方式。
谢谢
答案 0 :(得分:0)
您快到了。
问题是您要将一个列表打包到另一个列表中。
我的意思是_starsForRatings()
已经在返回您需要的列表。将列表分配给Row的children
属性之前,无需将该列表放入另一个列表中。
尝试以下方法:
Row(
children: _starsForRatings(),
)
List<Icon>_starsForRatings() {
List<Icon> stars = [];
for(int i = 0; i < _rating; i++){
stars.add(Icon(Icons.star));
}
return stars;
}