Flutter Google Maps 不会横向滚动

Posted

技术标签:

【中文标题】Flutter Google Maps 不会横向滚动【英文标题】:Flutter Google Maps wont scroll sideways 【发布时间】:2019-08-05 16:27:53 【问题描述】:

对 Flutter / android 开发者完全陌生。

我有一个谷歌地图作为 TabBar 中的一个标签。标签栏正在向左/向右滑动,而不是允许用户滚动地图。我怎样才能让地图滚动。我根据以下内容尝试了各种排列,但目前只有上下滚动有效。

GoogleMap(
        onMapCreated: _controller.complete,
        initialCameraPosition: _center,
        myLocationButtonEnabled: true,
        myLocationEnabled: true,
        scrollGesturesEnabled: true,
        gestureRecognizers: <Factory<OneSequenceGestureRecognizer>>[
          Factory<OneSequenceGestureRecognizer>(
            // () => ScaleGestureRecognizer(),
            () => HorizontalDragGestureRecognizer(),
          ),
        ].toSet(),
        markers: mkMarkers(this.widget.viewModel.restos),
      )

【问题讨论】:

【参考方案1】:

禁用 tabBar 物理。

不幸的是,这将适用于所有标签,但是您是否希望滚动在不同的标签上执行不同的操作。

TabBarView(
        physics: NeverScrollableScrollPhysics(),
...       
      ),

【讨论】:

这当然有效,但有你提到的不足之处。有没有办法让手势竞技场的东西更具外科性?【参考方案2】:

一种变体是当您在标签中引用地图时禁用该滑动功能,然后使用 setState () 您可以重新分配变量,以便滑动行为正常。

【讨论】:

以上是关于Flutter Google Maps 不会横向滚动的主要内容,如果未能解决你的问题,请参考以下文章

Flutter - 如何删除单个 google_maps_flutter ^0.5.21 标记?

Flutter:如何在 google_maps_flutter 中为标记图标设置动画?

如何为 google_maps_flutter 设置缩放级别

google_maps_flutter sdk 问题

从 google_maps_flutter 中删除多余的标记和圆圈

google_maps_flutter - 自定义标记图标:无法启用 MyLocation 图层,因为未授予位置权限