首页 文章

如何使用Flutter中的GridView创建不同大小的单元格?

提问于
浏览
0

我想用 Flutter 创建一个类似的视图,因为我们可以通过在iOS中创建 UICollectionViewLayout 来实现 .

这是我正在使用的示例代码 . https://github.com/flutter/flutter/blob/master/examples/flutter_gallery/lib/demo/material/grid_list_demo.dart

如何在 Flutter 中使用 GridView 实现此目的 . 如果不是 GridView ,还有其他办法吗?

Dynamic Sizes

1 回答

  • 2

    GridView不是为此而设计的 . 您可能能够得到Wrap来做你想做的事情,虽然从你的例子中它可能不会这样做(横向它肯定不会因为它将项目排成行;垂直它可能对你有效或可能不依赖于究竟是什么你在做) .

    如果你只想要两列,你可以简单地让一行包含两列,并确保将这些项放在右列中 .

    或者更复杂但可能最好的答案是编写自己以这种方式安排项目的逻辑 - 见CustomMultiChildLayout .

    编辑:还有一个可能适合您的包 . 它不能进行任意大小调整,您需要事先知道项目的大小,但是您可以指定项目以占用网格的多个行或列 . 见it here .

    请注意,如果你有很多项目,你可能想要用CustomScrollView做一些事情,但这并不属于这个答案的范围 .

相关问题