Flutter 如何监听App页面是否隐藏

使用AppLifecycleListener 来监听 想在那个页面监听就在那个页面初始化 别忘记还有销毁

Dart 复制代码
class _HomePageState extends State<HomePage> with WidgetsBindingObserver {

  @override
  void initState() {
    super.initState();

    WidgetsFlutterBinding.ensureInitialized(); // 确保初始化Flutter的绑定
    WidgetsBinding.instance!.addObserver(this); // 添加观察者
  }

  @override
  void didChangeAppLifecycleState(AppLifecycleState state) {
    // 在这里处理生命周期事件
    switch (state) {
      case AppLifecycleState.inactive:
        print('App is inactive');
        break;
      case AppLifecycleState.resumed://进入前台
        print('App is resumed');
        break;
      case AppLifecycleState.paused://进入后台
        print('App is paused');
        break;
      case AppLifecycleState.detached:
        print('App is suspending');
        break;
      case AppLifecycleState.hidden:
        // TODO: Handle this case.
        throw UnimplementedError();
    }
  }
@override
void dispose() {
  WidgetsBinding.instance!.removeObserver(lifecycleHandler); // 移除观察者
  super.dispose();
}
}
相关推荐
GreenTea43 分钟前
一文搞懂Harness Engineering与Meta-Harness
前端·人工智能·后端
autumn20052 小时前
Flutter 框架跨平台鸿蒙开发 - 虚拟纪念馆
flutter·华为·harmonyos
不爱吃糖的程序媛2 小时前
拷贝或克隆其他 Flutter OH 项目到本地后无法运行
flutter
killerbasd2 小时前
牧苏苏传 我不装了 4/7
前端·javascript·vue.js
2301_822703202 小时前
渐变壁纸生成:基于鸿蒙Flutter的跨平台壁纸创建工具
flutter·华为·harmonyos·鸿蒙
吴声子夜歌2 小时前
ES6——二进制数组详解
前端·ecmascript·es6
码事漫谈3 小时前
手把手带你部署本地模型,让你Token自由(小白专属)
前端·后端
ZC跨境爬虫3 小时前
【爬虫实战对比】Requests vs Scrapy 笔趣阁小说爬虫,从单线程到高效并发的全方位升级
前端·爬虫·scrapy·html
爱上好庆祝3 小时前
svg图片
前端·css·学习·html·css3
王夏奇3 小时前
python中的__all__ 具体用法
java·前端·python