如何解决Flutter-ListView不显示
由于某种原因,ListView没有显示。我认为其中一个小部件的高度从其父级获得了非高度...也许吗?似乎有些小部件的内容不会自动调整大小。我不想为任何容器设置大小,因为它们可能包含不同数量的信息。 https://codepen.io/dhust/pen/vYGZLPZ
更新: 错误:无法命中测试没有大小的渲染框。在此RenderBox上调用了hitTest()方法:
class MyWidget extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
body: Padding(
padding: const EdgeInsets.all(16.0),child: Container(
child: Column(
children: [
Row(
children: [
Container(
child: Column(
children: [
Expanded(
child: ListView.builder(
itemCount: 4,itemBuilder: (BuildContext context,int index) {
return Text("Hi");
},),],);
}
}
解决方法
对于ListView
,请添加shrinkWrap: true,
,以避免“垂直视口被赋予无限制的高度”。错误,并为其父Expanded
使用Column
来避免“ constraints.hasBoundedWidth不正确”。
Column(
children: [
Row(
children: [
Expanded( // Use Expanded here
child: Container(
child: Column(
children: [
ListView.builder(
shrinkWrap: true,// and use shrinkWrap
itemCount: 4,itemBuilder: (BuildContext context,int index) {
return Text("Hi");
},),],
结果:
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。