【发布时间】:2021-07-10 22:48:23
【问题描述】:
我正在开发一个 Flutter 应用程序,该应用程序具有类似于 whatsapp 的功能,其中可能有一堆本质上是音频播放器的消息。我正在使用AnimatedList,所以聊天气泡会进出动画。
问题是AnimatedList 似乎不支持keepAlive,而且我还没有遇到任何替代方案。我不希望小部件被回收,因为如果正在播放消息并且我将消息滚动进出视图,我希望消息继续播放和动画,现在我在每个孩子中实例化一个音频播放器和动画控制器小部件。如果我在子小部件之外维护所有这些状态(与列表处于同一级别),我可以看到这更加“最佳”,但此应用程序中每个对话的最大聊天气泡数量约为 50,我们希望快速移动而不是现在是最优的,所以我认为如果我可以让小部件保持活动状态,这种简化是一个好主意。
我尝试将子小部件包装在 KeepAlive 中,但没有成功。以下似乎是我的选择:
- 有一些受支持的方法可以做到这一点,我不知道
- 有一些替代/第 3 方库支持此功能
- 尝试使用非动画列表并探索其他动画方式
- 在孩子之上实现状态
我很想知道社区的潜在解决方案。谢谢!
【问题讨论】:
标签: flutter flutter-animatedlist