当前位置: 首页 > 知识库问答 >
问题:

如何从动态地图构建无状态小部件

马哲
2023-03-14

我是一个新手,我想建立动态地图

最终地图检查={'卧房':'床','浴室':'bathbub\u轮廓'};

它显示一个错误

lib/模板/general.dart:164: 18:错误:无法从返回类型为MapEntry的函数返回类型为Row的值

  • “行”来自“包:flatter/src/widgets/basic”。dart’(“../flight/packages/flight/lib/src/widgets/basic.dart”)

下面是无状态小部件功能

class BundleSpecification extends StatelessWidget {
  final Map specification;
  BundleSpecification(this.specification);

  final Map toCheck = {'bedroom':'bed','bathroom':'bathtub_outlined'};
  @override
  Widget build(BuildContext context) {
    return Padding(
      padding: const EdgeInsets.fromLTRB(0, 15.0, 0, 15.0),
      child: Row(
        children: toCheck.map((type,value){
          return Row(
            children: [
              Icon(Icons.bed),
              Text(specification[value]),
            ],
          );
        }).toList(),
      )
    );
  }

我真的很感激你的回答。非常感谢。

共有2个答案

麻烨
2023-03-14

您可以通过以下方式尝试在您的行小部件中映射映射:

Row(
 children: [
  ...toCheck.entries.map(
   (x) => Row(
     children: [
       Icon(Icons.bed),
       Text(specification[x.value]),
    ],
   ),
  )
 ],
)
吴松
2023-03-14

<代码>行将一个<代码>Iterable(例如<代码>列表)作为<代码>子项的参数。你给它提供的地图显然不起作用。

 类似资料:
  • 这个问题的主要原因如下。我正在动态填充,但什么都没有发生。

  • 我很熟悉flutter中的无状态和有状态小部件,但我很好奇为什么我们不将有状态小部件定义为无状态小部件?为什么我们需要声明两个不同的类,一个用于createstate方法,一个用于实际的状态实现?

  • 一名承包商在其本地笔记本电脑上构建了一个应用程序的AWS基础设施,从未提交过代码,然后离开(擦拭笔记本电脑的HD)。但他确实使用Terraform创建了基础设施,并将远程状态存储在s3存储桶中,即s3://analytics-nonprod/analytics-dev.tfstate。 此状态文件包括应用程序的所有VPC、子网、igw、nacl、ec2、ecs、sqs、sns、lambda、fir

  • 问题内容: 我试图在单击按钮时将诸如文本框,按钮之类的小部件添加到组合中。我已经尝试过了,但是我只能动态地添加这些小部件,最多不超过组合的大小。我的jface对话框是这样的,它具有滚动的复合文件,其中包含复合文件。在主要组合中,我还必须实现此功能的其他3个组合,因此,如果我向组合添加动态小部件,则它可能会扩展,但不应将现有组合叠加到该组合上,而应相应地调整其他组合,并且我应该能够在单击按钮时处理这

  • 有状态小部件被定义为在其生命周期内改变其状态的任何小部件。但是,将作为它的一个子元素是非常常见的做法。如果作为其子元素之一,,它不是变成有状态的吗? 我试图将文档作为代码的一部分进行查看,但无法弄清楚如何具有作为其子级,并且仍然保持。 Flutter中有状态和无状态小部件之间的关系和区别是什么?

  • 我想在状态尚未装入时访问状态的属性。 我想做4,但得到以下错误: P. S也不起作用。