现在,一个小部件只有在第一次创建小部件时触发的 initeState() 和在销毁小部件时触发的 dispose()。有没有一种方法可以检测小部件何时回到前台?当一个小部件因为另一个小部件刚刚被前景化而即将进入后台时? 相当于 Android 触发 onResume 和 onPause 触发 ios 触发 viewWillAppear 和 viewWillDisappear
最佳答案
有一个抽象类调用者WidgetsBindingObserver
https://docs.flutter.io/flutter/widgets/WidgetsBindingObserver-class.html
在
@override
void didChangeAppLifecycleState(AppLifecycleState state) {
setState(() {
_notification = state;
});
}
有“状态”,可以管理为
switch(state) {
case AppLifecycleState.resumed:
// Handle this case
break;
case AppLifecycleState.inactive:
// Handle this case
break;
case AppLifecycleState.paused:
// Handle this case
break;
case AppLifecycleState.suspending:
// Handle this case
break;
}
https://stackoverflow.com/questions/44331725/