当我尝试向我的应用程序添加动态小部件时,我遇到了一个奇怪的错误。当我按下添加按钮时,屏幕变成完全白色,我找不到原因。
我使用https://www.youtube.com/watch?v=xPW1vtDDlt4作为资源。我是Flutter的新手,也许我忘记了添加某些内容,但我已经检查了很多次。
这是我的代码:
class DynamicWidget extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Container(
child: new TextField(
decoration: new InputDecoration(hintText: 'Press + to Add Field'),
),
);
}
}
列表的初始化。
List<DynamicWidget> listDynamic = [];
我的函数用于向列表中添加小部件。
addDynamic() {
listDynamic.add(new DynamicWidget());
print("addDynamic");
setState(() {});
}
我不确定,但问题可能在这里:
final testText = Visibility(
child: new Column(
children: <Widget>[
new Flexible(
child: new ListView.builder(
itemCount: listDynamic.length,
itemBuilder: (_, index) => listDynamic[index],
),
),
],
),
);
这里我调用了我的小部件,将其声明为变量。
final body = Container(
child: SingleChildScrollView(
child: Column(
children: <Widget>[
testText,
strPhoto
],
),
),
);
最后是我的按钮。
return Scaffold(
appBar: new AppBar(title: new Text(device_type), centerTitle: true),
drawer: Menu(),
body: body,
floatingActionButton: Column(
crossAxisAlignment: CrossAxisAlignment.end,
mainAxisAlignment: MainAxisAlignment.end,
children: <Widget>[
FloatingActionButton(
heroTag: null,
child: Icon(
Icons.add,
color: Colors.white,
),
onPressed: () {
addDynamic();
},
),
],
));
Thanks for helping me.
SingleChildScrollView
中出现了错误。如果你能将它们都放在一个代码块中,那将非常有帮助。 - undefined