dart - Flutter:在简历上更新小部件?

在 Flutter 中,有没有一种方法可以在用户离开应用程序并立即返回时更新小部件?我的应用是基于时间的,尽快更新时间会很有帮助。

最佳答案

例如,您可以通过这样做来监听生命周期事件:

import 'package:flutter/material.dart';
import 'package:flutter/foundation.dart';

class LifecycleEventHandler extends WidgetsBindingObserver {
  final AsyncCallback resumeCallBack;
  final AsyncCallback suspendingCallBack;

  LifecycleEventHandler({
    this.resumeCallBack,
    this.suspendingCallBack,
  });

  @override
  Future<void> didChangeAppLifecycleState(AppLifecycleState state) async {
    switch (state) {
      case AppLifecycleState.resumed:
        if (resumeCallBack != null) {
          await resumeCallBack();
        }
        break;
      case AppLifecycleState.inactive:
      case AppLifecycleState.paused:
      case AppLifecycleState.detached:
        if (suspendingCallBack != null) {
          await suspendingCallBack();
        }
        break;
    }
  }
}



class AppWidgetState extends State<AppWidget> {
  void initState() {
    super.initState();

    WidgetsBinding.instance.addObserver(
      LifecycleEventHandler(resumeCallBack: () async => setState(() {
        // do something
      }))
    );
  }
  ...
}

https://stackoverflow.com/questions/49869873/

相关文章:

visual-studio-code - Visual Studio 代码中的 Flutter 检查

flutter - 如何在 Flutter 中更改状态栏和应用栏颜色?

testing - Flutter 测试的代码覆盖率数据如何显示?

dart - Flutter:使用按钮更改标签栏 View 中的当前标签

dart - 如何查看已安装的 Flutter 版本?

flutter - 没有 ScrollView 的刷新指示器

visual-studio-code - 如何在vscode中包围 flutter 小部件

flutter - 如何让应用程序保持清醒?

dart - Flutter - FloatingActionButton 中的 SimpleDia

google-maps - 如何在 flutter 的谷歌地图自定义标记中添加额外的文本?