Flutter中TabBarView切换状态保存

TabBarView 类似于Android中的viewPager,但是默认是没有实现切换分页状态保存的。估计是出于节约内存的原因吧。

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

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

 

你可能感兴趣的:(Flutter中TabBarView切换状态保存)