flutter - Flutter SingleChildScrollView将不会滚动

标签 flutter dart flutter-layout

我似乎无法使屏幕滚动。我已经尝试了以下代码的一些变体,但无法使其正常工作。我也使用了效果也不佳的ListView进行了尝试。诚然,我很长时间没有尝试对ListView进行故障排除,因为我一直认为问题是由其他原因引起的。我查看了SO,并看到了有关此主题的一些问题,它们帮助我解决了一些问题,但是我似乎无法使其正常工作。我没有收到任何错误消息或任何内容,我的屏幕根本无法滚动。在下面,您将看到我的代码的总体布局。我究竟做错了什么?

class _TripPackagesState extends State<TripPackages> {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: Stack(
        children: <Widget>[
          Container(
            child: Padding(
              padding: EdgeInsets.symmetric(horizontal: 20.0),
              child: Row(
                mainAxisAlignment: MainAxisAlignment.spaceBetween,
                children: <Widget>[
                  Text(...),
                  GestureDetector(...),
                ],
              ),
            ),
          ),
          Container(
            margin: EdgeInsets.only(top: 1.0),
            child: SingleChildScrollView(
              child: StreamBuilder<QuerySnapshot>(
                stream:
                    Firestore.instance.collection('trip_package').snapshots(),
                builder: (BuildContext context,
                    AsyncSnapshot<QuerySnapshot> docSnapshot) {
                  if (!docSnapshot.hasData) return const Text('Loading...');
                  final int docCount = docSnapshot.data.documents.length;
                  return GridView.builder(
                    shrinkWrap: true,
                    scrollDirection: Axis.vertical,
                    itemCount: docCount,
                    itemBuilder: (_, int index) {
                      DocumentSnapshot document =
                          docSnapshot.data.documents[index];
                      return GestureDetector(
                        child: Container(
                          margin: EdgeInsets.all(3.0),
                          child: Column(
                            mainAxisAlignment: MainAxisAlignment.center,
                            children: <Widget>[
                              Row(...),
                              Row(...),
                            ],
                          ),
                        ),
                      );
                    },
                    gridDelegate: SliverGridDelegateWithFixedCrossAxisCount(...),
                  );
                },
              ),
            ),
          ),
        ],
      ),
    );
  }
}

最佳答案

尝试在primary: false中使用GridView.builder

关于flutter - Flutter SingleChildScrollView将不会滚动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60855965/

相关文章:

flutter - 如何在 Flutter web 中使用 ReCaptcha

oauth-2.0 - Flutter packages pub - UnauthorizedAccess : Unauthorized user: . ..不允许将版本上传到包

image - Flutter:可以为参数类型 'Image Function(dynamic)'分配哪种类型的参数?

Flutter Firestore 按日期和字符串查询同时不返回?

gridview - 带标题的 Flutter GridView

flutter - 在 Flutter 中使屏幕的一部分可滚动

flutter - 为什么在Flutter中添加定期Timer之后,每秒都会重新初始化所有内容?

audio - 如何在 flutter 中重现 List<int> 中的音频?

firebase - 包含数组的查询的 Firestore 安全规则

android - Flutter 修复 FlatButton 中不同图片大小相同的问题