【发布时间】:2019-04-04 09:56:47
【问题描述】:
我正在尝试使用 Listview 构建器动态创建无限行。在每一行内我需要添加无限数量的文本字段。为什么嵌套的 Listview 构建器不起作用?
我尝试使用 Row,然后添加容器,它可以工作。为什么 Listview builder 不起作用?
import 'package:flutter/material.dart';
void main()
{
runApp(MainScreen());
}
class MainScreen extends StatefulWidget
{
@override
State<StatefulWidget> createState() {
return _MainScreenState();
}
}
class _MainScreenState extends State<MainScreen>{
int number = 1;
@override
void initState() {
// TODO: implement initState
super.initState();
}
@override
Widget build (BuildContext ctxt) {
var fieldslist = <Widget>[];
for (var i = 0; i < 10; i++) {
fieldslist.add(
new Container(
width: 100,
padding: EdgeInsets.all(4),
child:TextField(
keyboardType: TextInputType.number
)
)
);
}
return MaterialApp(
home: Scaffold(
appBar: new AppBar(title: new Text("Scores Screen"),),
body: new Column(
children: <Widget>[
new Row(
children: <Widget>[
new RaisedButton(
child: new Text("Add Scores"),
onPressed: (){
number++;
this.setState(()=>{});
})
],
),
new Expanded(
child: new ListView.builder
(
itemCount: number,
itemBuilder: (BuildContext ctxt, int index) {
new Expanded(
child: new ListView.builder(
scrollDirection: Axis.horizontal,
itemCount: 7,
itemBuilder: (BuildContext ctxt, int index){
return new Container(
width: 100,
padding: EdgeInsets.all(4),
child:TextField(
keyboardType: TextInputType.number
)
);
}
)
);
}
)
)
],
)
)
);
}
}
当我点击按钮时,屏幕是空白的,没有任何反应。
【问题讨论】: