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();
}
}
相关推荐
万少几秒前
DeepSeek-V4-Flash 正式版上线了,但这 3 个坑我帮你提前踩了
前端·javascript·后端
明月_清风3 分钟前
🚀 Palantir Foundry 本体论实战:当 Ontology 从"知识图谱"进化为"企业操作系统"
前端·后端
驳是4 分钟前
入坑 Nginx,看这一篇就够了
前端
宁风NF20 分钟前
JavaScript:网络请求与前端通信
开发语言·前端·javascript·网络·学习·ecmascript
明月_清风20 分钟前
从概念到代码:用 Ontology 构建你的第一个知识图谱
前端·后端
程序员黑豆38 分钟前
鸿蒙应用开发:AppStorage 全局状态存储用法教程
前端·harmonyos
猫猫不是喵喵.1 小时前
Vue3 中 computed 计算属性与 watch、watchEffect 监听
前端·javascript·vue.js
En^_^Joy1 小时前
Vue项目创建与入口配置全攻略
前端·vue.js·arcgis
爱码小白1 小时前
importlib模块
开发语言·前端·python
猫猫不是喵喵.2 小时前
Vue2 的 Vuex 状态管理与 Vue3 的 Pinia 状态管理
前端·javascript·vue.js