【问题标题】:Trying to put a ListView.builder inside a Column with other childrens试图将 ListView.builder 与其他孩子一起放在 Column 中
【发布时间】:2021-10-26 19:21:50
【问题描述】:

在尝试将 Column 和 ListView.builder 组合在一起时出现此错误

======== 渲染库捕获的异常 ================================== =================== RenderBox 未布置:_RenderSingleChildViewport#1fb04 relayoutBoundary=up10 需要-油漆需要-合成-位-更新 'package:flutter/src/rendering/box.dart':断言失败:第 1930 行 位置 12: 'hasSize'

如何解决?

return Scaffold(
  appBar: AppBar(),
  body: SingleChildScrollView( // The relevant error-causing widget
    child: Column(
      children: [
        for (int i = 0; i < 100; i++)
          Padding(
            padding: const EdgeInsets.all(20.0),
            child: Row(
                crossAxisAlignment: CrossAxisAlignment.start,
                children: [...],
              ),
          ),
          Expanded(
            child: ListView.builder(
              itemCount: 100,
              itemBuilder: (BuildContext context, int index) {...},
          ),
        ),
      ],
    ),
  ),
);

【问题讨论】:

    标签: flutter


    【解决方案1】:

    您可以尝试删除列表视图构建器上方的扩展小部件

    【讨论】:

      【解决方案2】:

      sizedbox 小部件中添加listview 并将高度设置为sizedbox 小部件

      【讨论】:

        【解决方案3】:

        删除Expanded 小部件并将Listview.buildershrinkWrap 属性分配给true

        return Scaffold(
          appBar: AppBar(),
          body: SingleChildScrollView( // The relevant error-causing widget
            child: Column(
              children: [
                for (int i = 0; i < 100; i++)
                  Padding(
                    padding: const EdgeInsets.all(20.0),
                    child: Row(
                        crossAxisAlignment: CrossAxisAlignment.start,
                        children: [...],
                      ),
                  ),
                  ListView.builder(
                      shrinkWrap: true,
                      itemCount: 100,
                      itemBuilder: (BuildContext context, int index) {...},
                  ),
              ],
            ),
          ),
        );
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2023-03-05
          • 1970-01-01
          • 1970-01-01
          • 2018-11-20
          • 2021-07-30
          • 1970-01-01
          • 2020-05-23
          相关资源
          最近更新 更多