flutter 基础 —— 缓存页面与滚动位置等信息

一、缓存页面

比如 Tab 切换,旧的 Tab 可能被销毁,我们需要做缓存。

解决方法:如果是 PageView 可以更改 allowImplicitScrolling 值为 true,会缓存前后各一页。
其它组件,可以实现 AutomaticKeepAliveClientMixin 接口。

注:TabBarView 底层也是 PageView


二、缓存 PageView 的每个页的滚动位置

解决方法:指定 PageStorageKey


三、缓存侧栏抽屉的打开与关闭状态

解决方法:指定 restorationId,持久化滚动偏移量。参考文章

2333

posted on 2022-08-16 14:55  Lemo_wd  阅读(640)  评论(0编辑  收藏  举报

导航