当我们在Flutter开发中,使用到Tabbar 切换页面时,我们会发现一个现象, 就是我从 tab1 = tab2 = tab3 ,控制台打印的日志,会发现 分别走了 tab1页面 tab2页面 tab3 页面的 初始化状态函数 initState() ,这是正常的操作; 但是如果我再从 tab 3 = tab2 = tab1,这时
当我们在Flutter开发中,使用到Tabbar 切换页面时,我们会发现一个现象,
就是我从 tab1 => tab2 = > tab3 ,控制台打印的日志,会发现 分别走了 tab1页面 tab2页面 tab3 页面的 初始化状态函数 initState(),这是正常的操作;
但是如果我再从 tab 3 => tab2 => tab1,这时我们发现, 同样的也走了 tab2,1的initState() 函数,也就是说** initState()** 会被重复调用, 这时,我们就需要切换tab时记录tab 页面的状态,避免initState()函数被重复调用。
解决方法:其实很简单,我们只需要在tab 页面
添加AutomaticKeepAliveClientMixin,并实现对应的方法bool get wantKeepAlive => true;,就可以了。
本文标题为:Flutter Tab 切换时保留tab的状态
- 基于CORS实现WebApi Ajax 跨域请求解决方法 2023-02-14
- ajax实现输入提示效果 2023-02-14
- vue keep-alive 2023-10-08
- JS实现左侧菜单工具栏 2022-08-31
- layui数据表格以及传数据方式 2022-12-13
- jsPlumb+vue创建字段映射关系 2023-10-08
- 深入浅析AjaxFileUpload实现单个文件的 Ajax 文件上传库 2022-12-15
- 关于 html:如何从 css 表中删除边距和填充 2022-09-21
- javascript 判断当前浏览器版本并判断ie版本 2023-08-08
- 1 Vue - 简介 2023-10-08