我正在开发Flutter应用程序,并且想动态调整其他ListView中ListView的高度。
我想制作ListView和内部动态高度Horizontal Listview。
有人可以帮助我吗?
答案 0 :(得分:0)
您可以在ListViewBuilder
内使用Container
,它是Column
的子代。
您可以设置容器的高度,它可以工作。
SingleChildScrollView(
child :Column(
children :[
Container:
child: ListView.builder(
scrollDirection: Axis.horizontal,
itemBuilder: (context, index) {
return Text('$index'),
},
itemCount = 10 ,
),
height : 100.0 ,
]
),
scrollDirection: Axis.vertical,
)
答案 1 :(得分:0)
如果我对您的理解正确,那么我可能会为您提供解决方案。
您可以像这样将小部件包装在 LayoutBuilder 中:
LayoutBuilder(
builder: (context, constraints) {
return SingleChildScrollView(
child: Column(
children: <Widget>[
Container(
child: ListView.builder(
scrollDirection: Axis.horizontal,
itemCount: 10,
itemBuilder: (context, index) {
return Text('$index');
},
),
height: constraints.maxHeight * kConstant,
),
],
),
scrollDirection: Axis.vertical,
);
},
);
kConstant是介于1和0之间的双精度值,可缩放您的身高。
这样,高空不再是绝对的,而是动态的。约束是由父窗口小部件提供的,因此constraints.maxHeight将为您提供窗口小部件树中位于LayoutBuilder之前的窗口小部件的最大高度。
希望这会有所帮助。