flutter 可滚动的主页不能很好地滚动

smtd7mpg  于 2022-12-30  发布在  Flutter
关注(0)|答案(2)|浏览(103)
Flexible(
 child: StreamBuilder(
      stream: ref.snapshots(),
      builder: (context,AsyncSnapshot<QuerySnapshot> snapshot){
      if(snapshot.hasError){
          return Center(
          child: Text("Error: ${snapshot.error}"),
        );
       }
      //here what widget should i add
     return Scrollbar(
        child: GridView.builder(
        shrinkWrap: true,
        gridDelegate: SliverGridDelegateWithFixedCrossAxisCount(
              crossAxisCount: 2,
              mainAxisSpacing: 15,
              crossAxisSpacing: 15,
              childAspectRatio: 2/3,
     ),

我不知道为什么主页上的滚动不能很好地工作,从gridView开始,我不能触摸该部分以执行滚动操作

huus2vyu

huus2vyu1#

当你把两个滚动视图内对方发生,你需要禁用第二滚动视图的物理,尝试改变你的代码如下:

Scrollbar(
    child: GridView.builder(
      shrinkWrap: true,
      physics: NeverScrollableScrollPhysics(), // <--- add this
      gridDelegate: SliverGridDelegateWithFixedCrossAxisCount(
        crossAxisCount: 2,
        mainAxisSpacing: 15,
        crossAxisSpacing: 15,
        childAspectRatio: 2 / 3,
      ),
    ),
  ),
3ks5zfa0

3ks5zfa02#

你有两个可滚动的小部件在一起,所以他们冲突。所以设置physics: const NeverScrollableScrollPhysics对您的GridView

Scrollbar(
      child: GridView.builder(
        shrinkWrap: true,
        physics: const NeverScrollableScrollPhysics(), 
        gridDelegate: SliverGridDelegateWithFixedCrossAxisCount(
        ),
      ),
    )

相关问题