首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >shrinkWrap在ListView.builder中做什么?

shrinkWrap在ListView.builder中做什么?
EN

Stack Overflow用户
提问于 2021-08-08 07:45:40
回答 2查看 139关注 0票数 1

在下面的示例中,使用了shrinkWrap属性,该示例创建了产品卡的水平列表。无论使用还是不使用它,我都没有注意到任何区别。那么,shrinkWrap在这里的实际用途是什么?

代码语言:javascript
复制
ListView.builder(
    shrinkWrap: true,
    padding: EdgeInsets.symmetric(horizontal: 20, vertical: 10),
    scrollDirection: Axis.horizontal,
    itemCount: products.length,
    itemBuilder: (context, index) {
      return ProductCard(product: products[index]);
    },
)
EN

回答 2

Stack Overflow用户

发布于 2021-08-08 07:50:00

ListView通常会填满其父级的所有可用空间,而不会关注每一项所需的最小大小。通过使用shrinkWrap并将其设置为true,您可以更改此场景,以便ListView仅占用每个项目通常所需的空间。显然,如果父小部件没有最小高度,即使您将shrinkWrap设置为true,它也会滚动。

票数 0
EN

Stack Overflow用户

发布于 2021-08-08 09:06:10

此构造函数适用于具有大量(或无限)子级的列表视图,因为构建器仅为那些实际可见的子级调用。

如果不设置shrinkWrap属性,则ListView将与其父对象一样大。

如果将其设置为true,则列表将包装其内容,并与其子元素允许的大小一样大。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68698758

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档