如何在Flutter上实现带有延迟加载功能的交错网格视图?

时间:2019-05-02 04:26:41

标签: android flutter lazy-loading flutter-layout staggered-gridview

我正在尝试在Flutter上创建具有交错网格视图的墙纸应用程序,为此,我尝试在Flutter(https://pub.dartlang.org/packages/flutter_staggered_grid_view)上使用Staggered Grid View软件包。但问题是,我的壁纸列表越来越大,并且需要花很多时间同时加载所有图像。

经过一些搜索,我遇到了Flutter-Pagewise Package,但不知道如何使用交错网格视图来实现。

1 个答案:

答案 0 :(得分:0)

最好的方法是创建ScrollController()

初始化滚动控制器以在项目长度的末尾接收通知,请确保将此控制器添加到交错网格视图中。

 _scrollController.addListener(() {
  if (_scrollController.position.pixels ==
      _scrollController.position.maxScrollExtent) {
    _getmoreData();
  }
});

您可以像这样初始化交错的网格视图

StaggeredGridView.countBuilder(
                          controller: _scrollController,
                          crossAxisCount: 2,
                          itemcount: length + 1)

在构建器内部检查索引是否等于长度,您可以显示循环进度指示器或您选择的指示器。