在列表中使用参数 | Flutter/Dart
Use parameter in list | Flutter/Dart
我是 Flutter 新手,有个问题让我抓狂了 2 天:)
我想在列表中使用参数(name1),但无法弄清楚哪里出了问题:
List<Widget> player = [Text(name1)];
String name1 = 'Max';
@override
Widget build(BuildContext context) {
return Container(
child: player[0],
);
}
}
错误:无法在字段初始值设定项中访问 'this' 以读取 'name1'
这是一个简化版本,但包含了问题。
您不能使用刚刚初始化的变量来初始化另一个变量。您可以在方法内调用变量。例如如果是一个StatefulWidget,你可以在initState方法中填充列表。
List<Widget> player = [];
String name1 = 'Max';
@override
void initState() {
player.add(Text(name1));
super.initState();
}
或者您可以使用所有小部件初始化列表:
List<Widget> player = [Text('name1'),Text('name2')];
我是 Flutter 新手,有个问题让我抓狂了 2 天:) 我想在列表中使用参数(name1),但无法弄清楚哪里出了问题:
List<Widget> player = [Text(name1)];
String name1 = 'Max';
@override
Widget build(BuildContext context) {
return Container(
child: player[0],
);
}
}
错误:无法在字段初始值设定项中访问 'this' 以读取 'name1'
这是一个简化版本,但包含了问题。
您不能使用刚刚初始化的变量来初始化另一个变量。您可以在方法内调用变量。例如如果是一个StatefulWidget,你可以在initState方法中填充列表。
List<Widget> player = [];
String name1 = 'Max';
@override
void initState() {
player.add(Text(name1));
super.initState();
}
或者您可以使用所有小部件初始化列表:
List<Widget> player = [Text('name1'),Text('name2')];