搜索插件、代码仓与 APP 分类

插件详情v1.0.0

masonry_grid

使用 Flutter Masonry Grid 布局创建马赛克、错落排列的项目布局。

AndroidiOSWebmacOSWindowsLinux
近 30 天下载
715
喜欢数
45
Pub 分数
130

安装插件

flutter pub add masonry_grid

插件介绍

基于插件公开信息、社区数据与项目使用情况整理的选型参考。

MasonryGrid 是一个 Flutter 包,可让开发者轻松创建马赛克或错落网格布局。它允许不同高度的项目以视觉上吸引人的非均匀网格模式排列,非常适合用于相册、产品列表和内容流。该布局会动态适应不同的屏幕尺寸,并在所有平台上支持流畅滚动。该组件注重性能和灵活性,可无缝集成到现有的 Flutter 项目中。

适合场景

  • 照片画廊
  • 产品列表
  • 内容提要
  • 动态项目布局
  • 响应式设计

主要特点

  • 交错项目排列
  • 可变项目高度
  • 跨平台支持
  • 平滑滚动
  • 轻松集成

适合对象

  • 开发视觉内容应用的开发者
  • 需要动态网格的项目
  • 面向多个平台的应用程序
  • 寻求灵活布局的设计人员

使用建议

  • 可能需要自定义高度计算
  • 性能取决于项目数量
  • 有限的内置自定义选项
  • 最适合静态或可预测的数据集

原始 README

以下为关联源码仓库的 README 原文快照,最新内容请访问源码仓库。

masonry_grid

Flutter Masonry Grid layout to create masonry, staggered items layout.

Getting Started

Install the package, add the dependencies to your pubspec.yaml

dependencies:
  // ... the rest of your dependencies
  masonry_grid: [version]

Usage

Import and use the widget to create your grid

import 'package:masonry_grid/masonry_grid.dart';

class YourPage extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
        body: CustomScrollView(
      slivers: [
        SliverToBoxAdapter(
            child: MasonryGrid(
                column: 2,
                children: List.generate(10, (i) =>
                      SizedBox(width: 100, height: 100, child: Text("hello")),
                )))
      ],
    ));
  }
}

Properties

int column  // number of column rendered
List<Widget> children // children widgets that's going to be rendered.
double mainAxisSpacing  // amount of vertical spacing between items
double crossAxisSpacing // amount of horizontal spacing between columns
bool staggered  //  stagger layout to override children order to paint items on the lowest column first
CrossAxisAlignment crossAxisAlignment // cross axis alignment inside of each column

所属分类

源码仓库

使用此插件的项目

暂无相关数据。