博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

02-09 flutter状态保持

Posted on 2020-11-23 23:42  肖无情  阅读(130)  评论(0编辑  收藏  举报

TabBarView、PageView 估计是出于节约内存的原因吧。

发现这个问题的时候,搜索了一下全网。大致就两种解决方案,1是修改源码,2是是实现 AutomaticKeepAliveClientMixin 这个mixin就ok了。

官方推荐第二种方法,TabBarView、PageView会添加N多个子的Widget控件,直接在这些子控件中,需要保存状态的控件的State实现一下 AutomaticKeepAliveClientMixin ,然后 wantKeepAlive 返回一个True就可以可以了,保存代码,模拟器刷新后,会发现切换状态不会重置状态了