Tho*_*mas 5 google-maps flutter
所以我基本上有一个带有三个选项卡的应用程序。在其中一个上,我有一个带有相应标记的 Google 地图和一个带有基于位置的 Firestore 查询的侦听器。当选择该选项卡时,将查询附近的元素并将其显示在地图上。
但是,当我更改选项卡并再次返回地图时,地图、侦听器和所有标记将再次设置(自initState()
和dispose()
被调用以来)。
当选择页面时,保存地图中的所有状态并继续地图的先前状态的最佳方法是什么?
我读过一些有关 Redux 和 BloC 的内容,这是我在这里需要的模式吗?如果是的话,如何将其应用于 GoogleMap?
我遇到了同样的问题,每次更改页面时,Flutter 基本上都会重新加载您的谷歌地图页面。我使用 IndexedStack 解决了这个问题。所以我所有的页面一直都在堆栈中,它们不会重新加载。我不确定这是否是最好的方法,但它确实有效。
child: new IndexedStack(
children: _pages,
index: widget.currentItem,
),
Run Code Online (Sandbox Code Playgroud)
IndexedStack 仅显示堆栈的索引项,但所有项目即使不显示也都在堆栈中,因此当您更改选项卡时它们不会重新加载。使用 setState 根据 TabBar 索引的索引更改 currentItem...
归档时间: |
|
查看次数: |
1819 次 |
最近记录: |