flutter 一个tab滚动其他也跟着滚动了

flutter NestedScrollView+TabBar+TabBarView  最近在用这三个组件在使用的过程中,发现这样的使用,一个tabview里一个滚动之后,其他的也跟着滚动到相同的位置了

SafeArea(
      top: true,
      child: NestedScrollView(
        controller: _scrollController,
        headerSliverBuilder: (BuildContext context, bool innerBoxIsScrolled) {
          return <Widget>[
            //appbar
            SliverPersistentHeader(
              ...
            ),
            //tabbar
            SliverPersistentHeader(
              ...
            ),
          ];
        },
        body: TabBarView(
          controller: this._tabController,
          children: [APage(), BPage(), CPage()],
        ),
      ),
    );

有没有人遇到过这样的情况呢,后来怎么解决了呢?

参考GPT和自己的思路:

这个问题可能是由于滚动控制器(_scrollController)不正确的配置导致的。你可以尝试使用TabBarView的physics属性,为TabBarView指定一个physics,来解决这个问题。比如,可以尝试使用NeverScrollableScrollPhysics(表示禁止滚动),来确保只有当前的TabView能够滚动,而其他的不会跟随滚动。具体如下所示:

body: TabBarView(
  controller: this._tabController,
  physics: NeverScrollableScrollPhysics(),
  children: [APage(), BPage(), CPage()],
),

希望这个解决方案能够帮助到你。