TabController 回调两次处理

使用 TabController 的 addListener 方法监听,发现每次都会回调两次,对于同步操作还好处理,如果是异步操作就比较难处理了。

通过打印发现 两次的 index 是相同的,然后发现还有一个参数就是 indexIsChanging 结合打印发现 indexIsChangeing 两次 只有一次为false。

所以最终的使用方式为:

复制代码
tabController.addListener(() {
  if(tabController.indexIsChanging) {
    /// TODO: do something 
  }
});
相关推荐
MonkeyKing8 分钟前
Flutter刷新机制与重建优化
flutter
空中海24 分钟前
4.4 动态与嵌套路由
flutter
2401_839633911 小时前
鸿蒙flutter第三方库适配 - 存储空间分析
flutter·华为·harmonyos
加农炮手Jinx1 小时前
Flutter 三方库 better_commit 的鸿蒙化适配指南 - 实现具备语义化提交规范与自动化交互的 Git 工作流插件、支持端侧版本工程的高效规范化审计实战
flutter·harmonyos·鸿蒙·openharmony·better_commit
空中海1 小时前
3.3 第三方框架
flutter·dart
麒麟ZHAO1 小时前
鸿蒙flutter第三方库适配 - 文件搜索工具
flutter·华为·harmonyos
2401_839633912 小时前
鸿蒙flutter第三方库适配 - 二维表格
flutter·华为·harmonyos
麒麟ZHAO2 小时前
鸿蒙flutter第三方库适配 - Google登录演示
flutter·华为·harmonyos
2401_839633912 小时前
鸿蒙flutter第三方库适配 - 日历网格
flutter·华为·harmonyos
2401_839633912 小时前
鸿蒙flutter第三方库适配 - 数据网格
flutter·华为·harmonyos