【问题标题】:Flutter RefreshIndicator doesn't work with TabBar and NestedScrollViewFlutter RefreshIndicator 不适用于 TabBar 和 NestedScrollView
【发布时间】:2022-01-18 04:44:22
【问题描述】:

我的应用程序没有按预期运行,我希望当我向下滚动我的应用程序时,它会显示刷新指示器并刷新页面。但是现在当我向下滚动屏幕时,什么也没发生。这是我的代码结构

return RefreshIndicator(
                backgroundColor: Colors.white,
                onRefresh: refreshPage,
                child: Stack(
                  children: <Widget>[
                    Container(
                      padding: EdgeInsets.only(bottom: 60),
                      child: NestedScrollView(
                        controller: _scrollController,
                        physics: ClampingScrollPhysics(),
                        headerSliverBuilder: (context, value) {
                          return [
                            SliverToBoxAdapter(
                              child: SomeWidget(),
                            ),
                            SliverToBoxAdapter(
                              child: SomeWidget(),
                            ),
                            SliverToBoxAdapter(
                              child: SomeWidget(),
                            ),
                            SliverToBoxAdapter(
                              child: SomeWidget(),
                            ),
                            SliverToBoxAdapter(
                              child: DefaultTabController(
                                length: 2,
                                child: TabBar(
                                  tabs: [
                                    Tab(text: "tab1"),
                                    Tab(text: "tab2"),
                                  ],
                                  controller: _tabController,
                                ),
                              ),
                            ),
                          ];
                        },
                        body: TabBarView(
                           controller: _tabController,
                           children: [
                              WidgetContentTab1(),
                              WidgetContentTab2(),
                           ],
                        physics: NeverScrollableScrollPhysics(),
                        );
                      ),
                    ),
                  ],
                ),
              );

哪些部分需要修复?

【问题讨论】:

    标签: android flutter mobile


    【解决方案1】:

    我看到你正在使用ClampingScrollPhysics

    用于防止滚动偏移超出内容边界的环境的滚动物理特性。

    BouncingScrollPhysics

    允许滚动偏移超出内容边界但随后将内容弹回到这些边界边缘的环境的滚动物理特性。

    你可以尝试改变滚动物理

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-09-02
      • 2019-07-12
      • 1970-01-01
      • 2015-10-22
      • 1970-01-01
      • 2015-09-25
      • 2021-04-21
      • 1970-01-01
      相关资源
      最近更新 更多