TabController 回调两次处理

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

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

所以最终的使用方式为:

复制代码
tabController.addListener(() {
  if(tabController.indexIsChanging) {
    /// TODO: do something 
  }
});
相关推荐
cn_mengbei1 小时前
Flutter for OpenHarmony 实战:TextFormField 表单输入框详解
flutter
奋斗的小青年!!1 小时前
Flutter跨平台开发适配OpenHarmony:手势识别实战应用
flutter·harmonyos·鸿蒙
cn_mengbei1 小时前
Flutter for OpenHarmony 实战:TextField 文本输入框详解
flutter
西西学代码2 小时前
Flutter---常见的ICON图标
flutter
LawrenceLan2 小时前
Flutter 零基础入门(十):final、const 与不可变数据
开发语言·flutter·dart
行者963 小时前
Flutter跨平台开发:安全检测组件适配OpenHarmony
flutter·harmonyos·鸿蒙
小雨下雨的雨4 小时前
Flutter 框架跨平台鸿蒙开发 —— GridView 控件之多维网格美学
flutter·华为·交互·harmonyos·鸿蒙系统
cn_mengbei4 小时前
Flutter for OpenHarmony 实战:ElevatedButton 悬浮按钮详解
flutter
不爱吃糖的程序媛4 小时前
OpenHarmony跨端生态适配全指南|Flutter/RN/三方库/C/C++/仓颉 鸿蒙化最佳实践
c语言·c++·flutter
小雨下雨的雨4 小时前
Flutter跨平台开发实战: 鸿蒙与循环交互艺术:无限循环的 Banner 引擎
flutter·ui·华为·交互·harmonyos·鸿蒙系统