国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Flutter中的AppLifecycleListener:應(yīng)用生命周期監(jiān)聽器介紹及使用

這篇具有很好參考價值的文章主要介紹了Flutter中的AppLifecycleListener:應(yīng)用生命周期監(jiān)聽器介紹及使用。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

引言

當(dāng)你在Flutter中需要監(jiān)聽?wèi)?yīng)用程序的生命周期變化時,可以使用AppLifecycleListener。在Flutter 3.13中,AppLifecycleListener被添加到Framework中,用于監(jiān)聽?wèi)?yīng)用程序的生命周期變化,并響應(yīng)退出應(yīng)用程序的請求等支持。

在Flutter 3.13之前,我們通常使用WidgetsBindingObserverdidChangeAppLifecycleState方法來實現(xiàn)生命周期的監(jiān)聽。但是,didChangeAppLifecycleState方法比較“粗暴”,直接返回AppLifecycleState讓用戶自己處理。而AppLifecycleListener則是在WidgetsBindingObserver.didChangeAppLifecycleState的基礎(chǔ)上進行了封裝,再配合當(dāng)前lifecycleState形成更完整的生命周期鏈條,對于開發(fā)者來說就是使用更方便,并且API相應(yīng)更直觀。

以下是一個簡單的使用AppLifecycleListener的示例:文章來源地址http://www.zghlxwxcb.cn/news/detail-808368.html

late final AppLifecycleListener _listener;
late AppLifecycleState? _state;


void initState() {
  super.initState();
  _state = SchedulerBinding.instance.lifecycleState;
  _listener = AppLifecycleListener(
    onShow: () => _handleTransition('show'),
    onResume: () => _handleTransition('resume'),
    onHide: () => _handleTransition('hide'),
    onInactive: () => _handleTransition('inactive'),
    onPause: () => _handleTransition('pause'),
    onDetach: () => _handleTransition('detach'),
    onRestart: () => _handleTransition('restart'),
    // 每次狀態(tài)改變都會觸發(fā)。上面的回調(diào)只用于特定的狀態(tài)轉(zhuǎn)換。
    onStateChange: _handleStateChange,
  );
}

void _handleTransition(String name) {
  print("########################## main $name");
}

總結(jié)

  1. late AppLifecycleState? _state是一個實例變量,用于存儲當(dāng)前應(yīng)用程序的生命周期狀態(tài)。在上述示例中,_stateinitState()方法中被初始化為當(dāng)前應(yīng)用程序的生命周期狀態(tài),即SchedulerBinding.instance.lifecycleState。雖然在這個示例中沒有使用_state,但是在其他的應(yīng)用場景中,你可能需要使用它來記錄應(yīng)用程序的生命周期狀態(tài)并在后續(xù)的處理中使用。
  2. AppLifecycleListener是一個完整的類,所以使用它無需使用mixin,你只需要在使用的地方創(chuàng)建一個AppLifecycleListener對象即可。AppLifecycleListener根據(jù)AppLifecycleState區(qū)分好了所有回調(diào)調(diào)用,調(diào)用編排更加直觀。最后,AppLifecycleListener可以更方便地判斷和記錄整個生命周期的鏈條變化,因為它已經(jīng)幫你封裝好回調(diào)方法。

到了這里,關(guān)于Flutter中的AppLifecycleListener:應(yīng)用生命周期監(jiān)聽器介紹及使用的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • Flutter Widget 生命周期 & key探究

    Flutter Widget 生命周期 & key探究

    在Flutter中,一切皆是Widget(組件),Widget的功能是“描述一個UI元素的配置數(shù)據(jù)”,它就是說,Widget其實并不是表示最終繪制在設(shè)備屏幕上的顯示元素,它只是描述顯示元素的一個配置數(shù)據(jù)。 實際上,F(xiàn)lutter中真正代表屏幕上顯示元素的類是 Element,也就是說Widget 只是描述

    2024年02月08日
    瀏覽(25)
  • Flutter Widget Life Cycle 組件生命周期

    Flutter Widget Life Cycle 組件生命周期

    了解 widget 生命周期,對我們開發(fā)組件還是很重要的。 今天會把無狀態(tài)、有狀態(tài)組件的幾個生命周期函數(shù)一起過下。 原文 https://ducafecat.com/blog/flutter-widget-life-cycle https://api.flutter.dev/flutter/widgets/StatelessWidget-class.html https://api.flutter.dev/flutter/widgets/StatefulWidget-class.html 無狀態(tài)組件

    2024年02月15日
    瀏覽(28)
  • Flutter 05 組件狀態(tài)、生命周期、數(shù)據(jù)傳遞(共享)、Key

    Flutter 05 組件狀態(tài)、生命周期、數(shù)據(jù)傳遞(共享)、Key

    1、Widget組件生命周期 和其他的視圖框架比如android的Activity一樣,flutter中的視圖Widget也存在生命周期,生命周期的回調(diào)函數(shù)體現(xiàn)在了State上面。組件State的生命周期整理如下圖所示: createState: 當(dāng)一個StatefulWidget插入到渲染樹結(jié)構(gòu)、或者從渲染樹結(jié)構(gòu)移除時,都會調(diào)用Stateful

    2024年02月05日
    瀏覽(24)
  • #Uniapp:頁面生命周期&應(yīng)用生命周期應(yīng)用

    創(chuàng)建-運行-銷毀 應(yīng)用的生命周期 App.vue 頁面的生命周期

    2024年01月23日
    瀏覽(29)
  • 微信小程序——生命周期,生命周期的分類,頁面生命周期,生命周期函數(shù)的分類,應(yīng)用的生命周期函數(shù),頁面的生命周期函數(shù),wxs腳本概述

    微信小程序——生命周期,生命周期的分類,頁面生命周期,生命周期函數(shù)的分類,應(yīng)用的生命周期函數(shù),頁面的生命周期函數(shù),wxs腳本概述

    生命周期( Life Cycle )是指一個對象從創(chuàng)建-運行-銷毀的整個階段,強調(diào)的是一個時間段。 例如: .張三出生,表示這個人生命周期的開始 .張三離世,表示這個人生命周期的結(jié)束 .中間張三的一生,就是張三的生命周期 我們可以把每個小程序運行的過程,也概括為生命周

    2024年02月01日
    瀏覽(29)
  • iOS的應(yīng)用生命周期以及應(yīng)用界面

    iOS的應(yīng)用生命周期以及應(yīng)用界面

    在iOS的原生開發(fā)中,我們需要特別關(guān)注兩個東西: AppDelegate和ViewController 。我們主要的編碼工作就是在AppDelegate和ViewControlle這兩個類中進行的。它們的類圖如下圖所示: AppDelegate是應(yīng)用程序委托對象,它繼承了UIResponder類,并實現(xiàn)了UIApplicationDelegate委托協(xié)議。UIResponder類可以使

    2024年02月07日
    瀏覽(26)
  • Android生命周期:理解與應(yīng)用

    摘要:Android生命周期是開發(fā)Android應(yīng)用程序時至關(guān)重要的概念。本文將介紹Android生命周期的概念、生命周期方法的執(zhí)行順序以及如何在應(yīng)用程序中正確地管理生命周期。我們還將討論生命周期對于應(yīng)用程序的重要性,并提供一些實際應(yīng)用中的最佳實踐和注意事項。 引言(10

    2024年02月05日
    瀏覽(22)
  • K8s: 關(guān)于Kubernetes中的Pod的生命周期(狀態(tài))以及生命周期的鉤子函數(shù)處理

    pod 的生命周期 1 ) pod 幾種常用狀態(tài) 1.1 )Pending(掛起) Pod 已被 Kubernetes 系統(tǒng)接受,但有一個或者多個容器尚未創(chuàng)建亦未運行 此階段包括等待 Pod 被調(diào)度的時間和通過網(wǎng)絡(luò)下載鏡像的時間。 1.2 )Running(運行中) Pod 已經(jīng)綁定到了某個節(jié)點,Pod 中所有的容器都已被創(chuàng)建 至少有

    2024年04月22日
    瀏覽(42)
  • 什么是Vue中的生命周期鉤子函數(shù)?有哪些主要的生命周期鉤子函數(shù)?如何監(jiān)聽DOM事件?

    Vue中的生命周期鉤子函數(shù)是指在Vue實例創(chuàng)建、數(shù)據(jù)綁定、組件掛載等生命周期階段中,可以執(zhí)行一些特定操作的函數(shù)。這些函數(shù)在Vue實例的不同生命周期階段被調(diào)用,可以幫助開發(fā)者更好地控制Vue實例的行為。 Vue的生命周期鉤子函數(shù)包括: beforeCreate :在Vue實例創(chuàng)建之前調(diào)用

    2024年02月12日
    瀏覽(20)
  • Vue.js生命周期及其應(yīng)用示例

    Vue.js是一種流行的前端JavaScript框架,可以讓開發(fā)人員輕松構(gòu)建動態(tài)用戶界面。Vue.js的一個關(guān)鍵特性是其生命周期系統(tǒng),它允許開發(fā)人員在組件的不同階段執(zhí)行代碼。在本文中,我們將探討Vue.js生命周期的不同階段以及如何在這些階段執(zhí)行代碼,并舉例說明。 Vue.js生命周期分

    2024年02月08日
    瀏覽(20)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包