从字符串列表中创建窗口小部件列表并获取错误

问题描述 投票:0回答:1

我正在尝试将字符串列表转换为小部件列表,这些小部件通过文本编辑/文本编辑控制器在先前的小部件中动态生成。

我已经将动态列表names放入了新的有状态小部件。

class NameMachine extends StatefulWidget {
  final List<String> names;

  NameMachine({Key key, @required this.names}) : super(key: key);

  @override
  State<StatefulWidget> createState() {
    return _NameMachineState(names);
  }
}

class _NameMachineState extends State<NameMachine> {
  final List<String> names;
 @override
  Widget build(BuildContext context) {

然后我尝试创建小部件列表,但遇到静态成员和初始化器问题。

final List<Widget> nameSlots = ...(names)
      .map(
        (names) => Container(
          padding: EdgeInsets.all(4.0),
          color: Colors.white,
          child: Text(
            names,
            textScaleFactor: 1.2,
            textAlign: TextAlign.center,
          ),
          width: double.infinity,
          height: double.infinity,
        ),
      )
      .toList();
flutter dart
1个回答
0
投票
class NameMachine extends StatefulWidget {
  final List<String> names;

  NameMachine({Key key, @required this.names}) : super(key: key);

  @override
  State<StatefulWidget> createState() => _NameMachineState();
}

class _NameMachineState extends State<NameMachine> {
 List<String> names;
 @override
 void initState(){
    super.initState();
    names = widget.names
    .map(
    (names) => Container(
      padding: EdgeInsets.all(4.0),
      color: Colors.white,
      child: Text(
        names,
        textScaleFactor: 1.2,
        textAlign: TextAlign.center,
      ),
      width: double.infinity,
      height: double.infinity,
    ),
  )
  .toList();
 }
 @override
  Widget build(BuildContext context) {

我中可能有一些语法错误,但这可能会对您有所帮助。

© www.soinside.com 2019 - 2024. All rights reserved.