如何在 PagedGridView 中水平对齐中心的加载图标?

Posted

技术标签:

【中文标题】如何在 PagedGridView 中水平对齐中心的加载图标?【英文标题】:How to align loading icon at center horizontally in PagedGridView? 【发布时间】:2021-12-13 09:04:01 【问题描述】:

我正在尝试使用无限滚动在 PagedGridView 中显示新闻项目,以一次加载有限数量的数据。一切正常,但我在获取额外数据时陷入了管理加载指示器的对齐问题。加载图标向右对齐,而我希望它水平位于屏幕中心。

PagedGridView(
                    pagingController: _pagingController,
                    scrollController: _scrollController,
                    gridDelegate: SliverGridDelegateWithFixedCrossAxisCount(
                        childAspectRatio: 5.2 / 8.0,
                        crossAxisCount: 2,
                        crossAxisSpacing: 1.5,
                        mainAxisSpacing: 3.0,
                        mainAxisExtent: 225),
                    builderDelegate: PagedChildBuilderDelegate<Post>(
                        itemBuilder: (context, item, index) 
                            return AllNewsCard(
                                allNews:
                                newsHeadlineController.getAllNewsList[index]);
                         
                    ),
                  )

【问题讨论】:

【参考方案1】:

不要将加载指示器添加为网格项。这就是为什么它位于右侧。 我会使用 CustomScrollViewSliverGrid 而不是 PagedGridViewSliverFillRemaining 来显示活动指示器。

  CustomScrollView(
    slivers: [
      SliverGrid(
        delegate: PagedChildBuilderDelegate<Post>(
            itemBuilder: (context, item, index) 
          return AllNewsCard(
              allNews: newsHeadlineController.getAllNewsList[index]);
        ),
        gridDelegate: SliverGridDelegateWithFixedCrossAxisCount(
          childAspectRatio: 5.2 / 8.0,
          crossAxisCount: 2,
          crossAxisSpacing: 1.5,
          mainAxisSpacing: 3.0,
          mainAxisExtent: 225,
        ),
      ),
      if (isLoading)
        SliverFillRemaining(
          hasScrollBody: false,
          child: CircularProgressIndicator(),
        ),
    ],
  );

【讨论】:

它给了我错误,因为参数类型“PagedChildBuilderDelegate”不能分配给参数类型“SliverChildDelegate”。

以上是关于如何在 PagedGridView 中水平对齐中心的加载图标?的主要内容,如果未能解决你的问题,请参考以下文章

Bootstrap 3中水平对齐缩略图到中心

如何在反应中水平对齐2行?

如何在角度材料中水平对齐单选按钮?

如何使用大小类和自动布局在 Xib 中水平对齐两个 UI 按钮

如何在tailwind-css中水平对齐图像

如何在表格中水平对齐文字?