颤振:排除一个对象在列表视图中滚动

时间:2020-07-30 12:40:14

标签: google-maps flutter listview

我有一个对象列表视图,基本上包含一个带有文本字段的表单,一个Google Maps对象以及另一个复选框形式。

我想做的是让google maps对象不是整个listview的滚动物理的一部分,因为那样的话,您实际上根本无法移动地图。

某些代码:

构建窗口小部件内的构造函数:

Flexible(
  child: StreamBuilder(
    stream: Firestore.instance.collection('users').document(uid).snapshots(),
    builder: (BuildContext context, AsyncSnapshot<DocumentSnapshot> snapshot) {
      if (snapshot.hasData) {
        return ListView.builder(
          physics: ScrollPhysics(),
          shrinkWrap: true,
          itemCount: 1,
          itemBuilder: (context, index) =>
           _buildListRows(context, snapshot.data),
        );
        } else {
          return LoadingAnimation();
        }
      },
    ),
  ),

_buildListRows小部件,简化了:

Widget _buildListRows(BuildContext context, DocumentSnapshot document) {
  return Container(
    child: Form(
        child: Column(
        children: <Widget>[
          Container(
            child: TextFormField(),
          ),
          Container(
            child: SizedBox(
              child: GoogleMap(),
            ),
          ),
          Expanded(
            Container(
              ListView(
                physics: ScrollPhysics(),
                children: keys.map(key) {
                  return Checkbox(value: key);
                }
            ),
          ),
        ],
      ),
    ),
  );
}

因此,快速回顾一下,我需要能够在地图上方和下方滚动对象,以上下移动整个屏幕,但是在地图本身上,我需要能够控制地图,以便触摸操作将应用于地图功能。

我已经阅读了很多有关此内容的内容,并尝试了一些建议,例如在其父级下使用singlechildscrollview,然后使用listview,但是似乎其他尝试完全破坏了该应用程序,并且什么也没有显示。

0 个答案:

没有答案