在Flutter中使用for循环生成表行

vktxenjb  于 2023-08-07  发布在  Flutter
关注(0)|答案(1)|浏览(139)

请检查我下面的代码我做错了什么我试图使用for循环生成一个表行列表。和结果是得到返回只是最后一个项目在我的列表和停止,但我当我使用打印它显示其生成项目,因为它surpose。

class CustomTableRow extends StatelessWidget {
  const CustomTableRow({super.key});

  @override
  Widget build(BuildContext context) {
    return Table(
      border: TableBorder(
          top: containerBorderSide,
          bottom: containerBorderSide,
          horizontalInside: containerBorderSide),
      children: [
        returnRestoreWord(),
      ],
    );
  }
}

BorderSide containerBorderSide = BorderSide(
  color: Colors.grey.shade300,
  width: 2,
);

List<String> restoreWords = [
  'Abandon',
  'Ability',
  'Divorce',
  'Leopard',
  'Scale',
  'Lens',
  'Music'
];

TableRow returnRestoreWord() {
  String words = '';
  for (String word in restoreWords) {
    words = word;
  }
  return TableRow(children: [
    Padding(
      padding: const EdgeInsets.all(20.0),
      child: Text(
        words,
        style: const TextStyle(
          fontSize: 25,
          fontWeight: FontWeight.w500,
        ),
      ),
    )
  ]);
}

字符串
请检查我下面的代码我做错了什么我试图使用for循环生成一个表行列表。和结果是得到返回只是最后一个项目在我的列表和停止,但我当我使用打印它显示其生成项目,因为它surpose。

bvk5enib

bvk5enib1#

我想你可能正在寻找这样的东西:

class CustomTableRow extends StatelessWidget {
  const CustomTableRow({super.key});

  @override
  Widget build(BuildContext context) {
    return Table(
      border: TableBorder(
          top: containerBorderSide,
          bottom: containerBorderSide,
          horizontalInside: containerBorderSide),
      children: [
        for ( final word in restoreWords )
          TableRow(children: [
            Padding(
              padding: const EdgeInsets.all(20.0),
              child: Text(
                word,
                style: const TextStyle(
                  fontSize: 25,
                  fontWeight: FontWeight.w500,
                ),
              ),
            )
          ])
        
      ],
    );
  }
}

BorderSide containerBorderSide = BorderSide(
  color: Colors.grey.shade300,
  width: 2,
);

List<String> restoreWords = [
  'Abandon',
  'Ability',
  'Divorce',
  'Leopard',
  'Scale',
  'Lens',
  'Music'
];

字符串

相关问题