免费域名网站建设,wordpress信息导出,镇江网站制作价格如何计算,网站建设开发软件有哪些flutter开发实战-WidgetsBinding监听页面前台后台退出状态
在开发过程中#xff0c;经常监听页面前台后台退出状态#xff0c;这里用到了WidgetsBinding
一、WidgetsBinding是什么#xff1f;
WidgetsBinding是Flutter中最重要的Binding之一#xff0c;它提供了与Widget…flutter开发实战-WidgetsBinding监听页面前台后台退出状态
在开发过程中经常监听页面前台后台退出状态这里用到了WidgetsBinding
一、WidgetsBinding是什么
WidgetsBinding是Flutter中最重要的Binding之一它提供了与Widget树的交互。在Flutter中所有的UI都是Widget从最简单的文本到最复杂的布局都可以通过Widget树来描述。WidgetsBinding负责处理用户输入事件、布局和绘制。它还处理与系统交互的平台通道如调用原生代码和处理通知。WidgetsBinding提供了一些常用的方法如addPostFrameCallback、deferredUnmount、getRendererBinding等。
二、监听页面前台后台退出状态
WidgetsBinding监听页面前台后台退出状态我们需要在Widget中添加
with WidgetsBindingObserver
在initState中加入观察者 WidgetsBinding.instance?.addObserver(this);在dispose中移除观察者 WidgetsBinding.instance?.removeObserver(this);之后通过响应的方法didChangeAppLifecycleState来监听页面前台后台退出状态
// WidgetBinding///生命周期变化时回调// resumed:应用可见并可响应用户操作// inactive:用户可见但不可响应用户操作// paused:已经暂停了用户不可见、不可操作// suspending应用被挂起此状态IOS永远不会回调overridevoid didChangeAppLifecycleState(AppLifecycleState state) {super.didChangeAppLifecycleState(state);switch (state) {case AppLifecycleState.inactive:{// 处于这种状态的应用程序应该假设它们可能在任何时候暂停。break;}case AppLifecycleState.resumed:{// 应用程序可见前台if (_isAppBackground true) {setState(() {});_isAppBackground false;}break;}case AppLifecycleState.paused:{// 应用程序不可见后台_isAppBackground true;break;}case AppLifecycleState.detached:{// 页面退出break;}}}///当前系统改变了一些访问性活动的回调overridevoid didChangeAccessibilityFeatures() {super.didChangeAccessibilityFeatures();}/// Called when the system is running low on memory.///低内存回调overridevoid didHaveMemoryPressure() {super.didHaveMemoryPressure();}/// Called when the applications dimensions change. For example,/// when a phone is rotated.///应用尺寸改变时回调例如旋转overridevoid didChangeMetrics() {super.didChangeMetrics();}/// {macro on_platform_brightness_change}overridevoid didChangePlatformBrightness() {super.didChangePlatformBrightness();}///文字系数变化overridevoid didChangeTextScaleFactor() {super.didChangeTextScaleFactor();}三、小结
flutter开发实战-WidgetsBinding监听页面前台后台退出状态。
https://blog.csdn.net/gloryFlow/article/details/132253284 学习记录每天不停进步。