[英]Flutter Dynamic Height Horizontal Listivew inside Vertical Listview
我在组装应用程序中很常见的布局时遇到了一些困难。
我有一个 ListView.builder,涉及一个列内的展开。 对于每个项目,我都有一个新的 ListView.builder(水平),但它只有在我放置一个固定高度时才有效。
有没有办法让这个水平(子)列表动态化,有几种不同的大小,而不需要固定的高度?
Expanded(
child: ListView.builder(
shrinkWrap: true,
itemCount: 10,
itemBuilder: (context, index) {
return SizedBox(
height: 30, //Only works with this height
width: MediaQuery.of(context).size.width,
child: ListView.builder(
shrinkWrap: true,
scrollDirection: Axis.horizontal,
itemCount: 2,
itemBuilder: (context, index) {
return Container(
width: MediaQuery.of(context).size.width,
color: index == 0 ? Colors.blue : Colors.red,
child: Text("Lorem Lorem Lorem Lorem Lorem Lorem Lorem Lorem Lorem Lorem Lorem Lorem Lorem Lorem Lorem Lorem Lorem Lorem Lorem Lorem Lorem Lorem Lorem Lorem Lorem Lorem Lorem Lorem Lorem Lorem Lorem"),
);
},),
);
},),
)
PS.:我尝试过 Expanded、Flexible、InstrinctHeight,但没有任何效果。
return Scaffold(
body: ListView.builder(
shrinkWrap: true,
itemCount: 10,
itemBuilder: (context, index) {
return SizedBox(
height: 30, //Only works with this height
width: MediaQuery.of(context).size.width,
child: ListView.builder(
shrinkWrap: true,
scrollDirection: Axis.horizontal,
itemCount: 2,
itemBuilder: (context, index) {
return Container(
width: MediaQuery.of(context).size.width,
color: index == 0 ? Colors.blue : Colors.red,
child: Text(
"Lorem Lorem Lorem Lorem Lorem Lorem Lorem Lorem Lorem Lorem Lorem Lorem Lorem Lorem Lorem Lorem Lorem Lorem Lorem Lorem Lorem Lorem Lorem Lorem Lorem Lorem Lorem Lorem Lorem Lorem Lorem"),
);
},
),
);
},
),
);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.