我的函数中有这样的代码:
for (var i = 0; i < widget.menuItem.category.length; i++) ...[
Flexible(
flex: 6,
child: ListView.builder(
itemCount: widget.menuItem.category.length,
itemBuilder: (BuildContext context, int index) {
return Padding(
padding: EdgeInsets.only(left: 16, right: 16, bottom: 4),
child: Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: <Widget>[
Container(
child: Text('Select ' + widget.menuItem.category[i]),
padding: EdgeInsets.only(
left: 16, right: 16, top: 8, bottom: 6),
),
Container(
child: Text('Select ' +
_qty.toString() +
' item (' +
_qty.toString() +
'/' +
widget.menuItem.setMenuItems.length.toString() +
')'),
padding: EdgeInsets.only(
left: 16, right: 16, top: 8, bottom: 6),
),
],
),
);
},
),
),
_buildSetMenusView(setMenuItems: widget.menuItem.setMenuItems),
],
和 _buildSetMenusView 函数如下:
_buildSetMenusView({List<MenuItem> setMenuItems}) {
return Flexible(
flex: 12,
child: ListView.builder(
itemCount: setMenuItems.length,
itemBuilder: (BuildContext context, int index) {
final isSelected = _selectedVariants.contains(setMenuItems[index]);
return Padding(
padding: EdgeInsets.only(left: 16, right: 16, bottom: 4),
child: _buildSetMenuItemButton(
setMenuItem: setMenuItems[index], isSelected: isSelected),
);
},
),
);}
可以滚动
如何更正当前代码以使其与所需/想要的 UI 相同?
在ListView.builder中添加
shrinkWrap
和physics
ListView.builder(
shrinkWrap: true,
physics: const NeverScrollableScrollPhysics(),
...
);