扑。 SingleChildScrollView 不会滚动到 Positioned 小部件

Flutter. SingleChildScrollView doesn't scroll into Positioned widget

我正在使用 flutter 创建一个应用程序。 我正在尝试创建一种框(使用定位小部件),其中会有一个可滚动的小部件列表。 我需要一个 Positioned 小部件来将我的“盒子”小部件堆叠到正确的位置。 我的问题是对象列表不滚动。有什么建议吗?

Widget build(BuildContext context) {
    return FutureBuilder<List<SoccerMatch>>(
      future: SoccerApi().getAllMatches(),
      builder: (context, snapshot) {
        if (snapshot.hasData) {
          return Positioned(
            top: _queryData.size.height * 0.50,
            bottom: -_queryData.size.height * 0.6,
            right: _queryData.size.width * 0.1,
            left: _queryData.size.width * 0.1,
            child: SingleChildScrollView(
              physics: ScrollPhysics(),
              child:
              Column(
                children: [
                  ListView.builder(
                    scrollDirection: Axis.vertical,
                    physics: NeverScrollableScrollPhysics(),
                    shrinkWrap: true,
                    itemCount: snapshot.data!.length,
                    itemBuilder: (context, index)
                    {
                      return matchTile(snapshot.data![index]);
                    },
                  ),
                ],
              ),

            ),


          );
        } else {
          return Center(
            child: CircularProgressIndicator(),
          );
        }
      },
    );
  }

只需尝试使用以下内容更新您的 FutureBuilder

          FutureBuilder<List<SoccerMatch>>(
        future: SoccerApi().getAllMatches(),
        builder: (context, snapshot) {
          print(snapshot);
          if (!snapshot.hasData) {
            return Center(
              child: CircularProgressIndicator(),
            );
          }
          if (snapshot.hasData) {
            return Stack(
              children: [
                Positioned(
                  top: _queryData.size.height * 0.50,
                  bottom: -_queryData.size.height * 0.6,
                  right: _queryData.size.width * 0.1,
                  left: _queryData.size.width * 0.1,
                  child: SingleChildScrollView(
                      physics: ScrollPhysics(),
                      child:
                      Column(
                        children: (snapshot.data as List<SoccerMatch>).map((item) => matchTile(item)),
                      ).toList()),
                ),
              ],
            );
          }

          return SizedBox();
        }
      )

你只需要把你的下装换成

height: _queryData.size.height * 0.5,