美文网首页
Flutter 瀑布流 带header

Flutter 瀑布流 带header

作者: 丶MrZhu | 来源:发表于2023-12-04 15:13 被阅读0次

    仿【闲鱼】首页做的瀑布流+顶部Header效果

    IMG_5473.jpg
    需要使用第三方组件:
    // https://pub.dev/packages/flutter_staggered_grid_view
    flutter_staggered_grid_view: ^0.7.0
    

    瀑布流效果

    61621701760118_.pic.jpg
    全部代码
    // 使用CustomScrollView 可以避免一次性全部绘制问题
    CustomScrollView(
      slivers: [
        // 可以无限设置顶部header
        SliverToBoxAdapter(
          child: Image.network(
            ImageUtil.testImageH,
            fit: BoxFit.cover,
          ),
        ),
        // 瀑布流
        SliverMasonryGrid.count(
          // 每排显示两个
          crossAxisCount: 2,
          // 设置间距
          mainAxisSpacing: 10,
          crossAxisSpacing: 10,
          childCount: 20,
          itemBuilder: (context, index) {
            // item
            return Container(
                // 随机高度
                height: Random().nextInt(256).toDouble(),
                decoration: BoxDecoration(
                  borderRadius: BorderRadius.circular(10),
                  // 随机颜色
                  color: Color.fromARGB(
                      Random().nextInt(256),
                      Random().nextInt(256),
                      Random().nextInt(256),
                      Random().nextInt(256)),
                ),
                child: Center(
                  child: Text("Test:$index"),
                ));
          },
        ),
      ],
    )
    

    之前见过一种ListView嵌套的,ListView 这种只有两个item(一个header,一个不瀑布流的GradView) 会导致一次性全部绘制出瀑布流列表,不建议使用这种嵌套

    END

    相关文章

      网友评论

          本文标题:Flutter 瀑布流 带header

          本文链接:https://www.haomeiwen.com/subject/inxrgdtx.html