Flutter ListView-为什么我的小部件之间有黄色的间隙?
我很难理解为什么我的两个小部件之间有一个黄色的空格。。。我正在使用一个listView小部件,它使用一个快照来创建一个列表 这是我的密码Flutter ListView-为什么我的小部件之间有黄色的间隙?,flutter,flutter-layout,Flutter,Flutter Layout,我很难理解为什么我的两个小部件之间有一个黄色的空格。。。我正在使用一个listView小部件,它使用一个快照来创建一个列表 这是我的密码 @override Widget build(BuildContext context) { return Scaffold( body: Center( child: SingleChildScrollView( child: Padding( paddin
@override
Widget build(BuildContext context) {
return Scaffold(
body: Center(
child: SingleChildScrollView(
child: Padding(
padding: EdgeInsets.symmetric(horizontal: 24.0),
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
crossAxisAlignment: CrossAxisAlignment.stretch,
children: <Widget>[
Text(
'My least tested groups',
),
Container(
color: Colors.yellowAccent,
child: SchoolList(),
),
],
),
),
),
),
);
}
@覆盖
小部件构建(构建上下文){
返回脚手架(
正文:中(
子:SingleChildScrollView(
孩子:填充(
填充:边缘组。对称(水平:24.0),
子:列(
mainAxisAlignment:mainAxisAlignment.center,
crossAxisAlignment:crossAxisAlignment.stretch,
儿童:[
正文(
“我最不受考验的群体”,
),
容器(
颜色:Colors.yellowAccent,
孩子:学校列表(),
),
],
),
),
),
),
);
}
这就是小部件
class SchoolList extends StatelessWidget {
@override
Widget build(BuildContext context) {
return StreamBuilder<QuerySnapshot>(
stream: myStream1,
builder: (BuildContext context, AsyncSnapshot<QuerySnapshot> snapshot) {
if (snapshot.hasError) return new Text('Error: ${snapshot.error}');
switch (snapshot.connectionState) {
case ConnectionState.waiting:
return new Text(
'Loading...',
style: kSendButtonTextStyle.copyWith(color: kColorText),
);
default:
return new ListView(
shrinkWrap: true,
physics: ClampingScrollPhysics(),
children:
snapshot.data.documents.map((DocumentSnapshot document) {
return Container(
height: 100,
width: 100,
color: Colors.white,
child: Text('xxx'));
}).toList(),
);
}
},
);
}
}
班级学校列表扩展了无状态小部件{
@凌驾
小部件构建(构建上下文){
返回流生成器(
流:myStream1,
生成器:(BuildContext上下文,异步快照){
if(snapshot.hasError)返回新文本('Error:${snapshot.Error}');
交换机(快照.连接状态){
案例连接状态。正在等待:
返回新文本(
“正在加载…”,
样式:kSendButtonTextStyle.copyWith(颜色:kColorText),
);
违约:
返回新的ListView(
收缩膜:对,
物理:ClampingScrollPhysics(),
儿童:
snapshot.data.documents.map((DocumentSnapshot文档){
返回容器(
身高:100,
宽度:100,
颜色:颜色,白色,
子:文本('xxx');
}).toList(),
);
}
},
);
}
}
有人能理解为什么我有一个黄色的间隙,更重要的是如何消除它吗?我认为
列表视图试图为状态栏应用顶部填充
您可以通过在列表视图
小部件中设置padding:const EdgeInsets.all(0.0)
来删除它。这就是原因!我不知道为什么会这样,这是我第一次看到这种行为。非常感谢您的回复!