dart - 使用键和值从 map 创建小部件列表

如果我说 SimpleDialog()它接受 children[]我想从 Map<int, String> 填充它,我该怎么做?我需要键和值来创建子小部件。

const optionsMap = {
    111:"First option",
    222:"Second option",
}
return SimpleDialog(
    title: Text('Choose one'),
    children: // I don't know what to put here
              // I want to have widgets based on optionsMap keys and values
)

我通过创建 List<Widget> 解决了这个问题事先在 return 语句上方,但只是为了方便(并且在 Dart 中变得更好),我想知道是否有一种方法可以内联。

最佳答案

更新答案以合并 @lrn 的评论

你可以使用map

const optionsMap = {
    111:"First option",
    222:"Second option",
}     
    return SimpleDialog(
        title: Text('Choose one'),
        children: optionsMap.entries.map((entry) {
          var w = Text(entry.value);
          doSomething(entry.key);
          return w;
        }).toList());
;

https://stackoverflow.com/questions/55039861/

相关文章:

google-maps - 自定义 Flutter Google Map 中的中心位置按钮

dart - StreamBuilder 抛出 Dirty State 说 Invalid Argu

architecture - flutter BLoC : Is using nested Stre

android - 在 Flutter 的垂直列表中添加动态高度水平 ListView

flutter - 了解 Flutter didChangeDependencies 机制

dart - 如何根据背景图像更改文本颜色 - Flutter

dart - 如何在 Flutter/Dart 中将参数从命令行传递到 main?

list - Flutter - 如何查询列表中的搜索项

flutter - 在 Android Studio 中运行和热重载 flutter 的问题(坏状态

flutter - 在 Flutter 中监听设备方向变化