8 user-interface flutter singlechildscrollview
我面临这个异常:
FlutterError(RenderViewport 不支持返回内在尺寸。计算内在尺寸需要实例化视口的每个子级,这会破坏视口的惰性。如果您只是尝试在主轴方向上收缩包裹视口,请考虑RenderShrinkWrappingViewport 渲染对象(ShrinkWrappingViewport 小部件),无需实现内在维度 API 即可实现该效果。)
当我添加时ProductsWidget
发生异常。
产品小部件的代码是:
class ProductsWidget extends GetResponsiveView<HomeTabController> {
@override
Widget build(BuildContext context) {
return ListView.builder(
shrinkWrap: true,
itemCount: 3,
// padding: EdgeInsets.symmetric(vertical: 20),
physics: NeverScrollableScrollPhysics(),
itemBuilder: (context, index) => Column(
children: [
Row()])}}
Run Code Online (Sandbox Code Playgroud)
调用代码是:
body: LayoutBuilder(
builder: (BuildContext context, BoxConstraints constraints) {
return SingleChildScrollView(
child: ConstrainedBox(
constraints: BoxConstraints(
minHeight: constraints.maxHeight,
),
child: IntrinsicHeight(
child: Column(
mainAxisSize: MainAxisSize.min,
children: [
Expanded(
// flex: 1,
child: HomeAppBar()),
// listView
// i made shrinkWrap=true
// neverScroll
Flexible(fit: FlexFit.tight, child: ProductsWidget()),
],
),
),
),
);
}),
Run Code Online (Sandbox Code Playgroud)
尝试将 ProductsWidget 包装在 SizedBox 中,并为其指定宽度(宽度:double.maxFinite)和可能的高度。
我遇到了类似的问题,我发现以下帖子很有帮助:flutter listview with radio not shown in AlertDialog
归档时间: |
|
查看次数: |
18506 次 |
最近记录: |