gpt4 book ai didi

python - Dart 相当于 Python zip 和列表理解,用于从两个列表生成小部件列表

转载 作者:行者123 更新时间:2023-12-03 03:00:14 25 4
gpt4 key购买 nike

我想创建一个小部件列表 MyWidget(categoryName, color)从以下两个列表中。

  static const _categoryNames = <String>[
'Length',
'Area',
'Volume',
];

static const _baseColors = <Color>[
Colors.teal,
Colors.orange,
Colors.pinkAccent,
];

在 Python 中,我会使用带有 zip 的列表理解来获得结果。

my_widget_list = [MyWidget(categoryName, baseColor) for categoryName, baseColor in zip(_categoryNames, _baseColors)]

谷歌搜索 Dart 的类似方法没有提供任何令人满意的解决方案。

最佳答案

如果您的目标是创建一个小部件列表(假设您的两个列表将具有相同数量的元素)。你可以试试

List<Widget> getWidgets() {

List<Widget> my_widget_list = [];
const _categoryNames = <String>[
'Length',
'Area',
'Volume',
];

const _baseColors = <Color>[
Colors.teal,
Colors.orange,
Colors.pinkAccent,
];

for (int i = 0; i <= _categoryNames.length -1 ; i++){
my_widget_list.add(MyWidget(_categoryNames[i],_baseColors[i]));
}

return my_widget_list;
}

Widget MyWidget(String categoryName, Color baseColor){
return Container(
color: baseColor,
child: Text(categoryName,));
}

关于python - Dart 相当于 Python zip 和列表理解,用于从两个列表生成小部件列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62234207/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com