Flutter開發(fā) 局部刷新-StatefulBuilder

Flutter狀態(tài)類

Flutter開發(fā)當中總共有兩種狀態(tài)的Widget,一種是StatelessWidget;另一種是StatefulWidget。

StatelessWidget 是無狀態(tài)控件,沒有自己的私有數(shù)據(jù),是純展示型的控件,一個類繼承自StatefulWidget,作為Widget樹的一部分。

StatefulWidget 是有狀態(tài)組件,持有的狀態(tài)可能在 widget 生命周期改變。通俗的講:如果我們想改變頁面中的數(shù)據(jù)的話這個時候就需要用到 StatefulWidget,StatefulWidget繼承自State,用于記錄StatefulWidget會變化的狀態(tài),并且根據(jù)狀態(tài)的變化,構(gòu)建出新的Widget;

如果需要進行刷新頁面改變狀態(tài)的話,需要使用 setState(() {}),但是隨著頁面結(jié)構(gòu)復(fù)雜化,如果每次進行賦值或者改變局部數(shù)據(jù)都進行setState(() {}),會對整體頁面有較大的影響,可以使用局部刷新的StatefulBuilder。一下為使用方式

Flutter局部刷新 -?StatefulBuilder

1、進行定義

? /// StateSetter

? StateSetter _reloadTextSetter;


2、使用控件

StatefulBuilder(

? ? ? ? ? ? ? ? builder: (BuildContext context, StateSetter stateSetter) {

? ? ? ? ? ? ? _reloadTextSetter = stateSetter;

? ? ? ? ? ? ? return Container()? ?

?));

3、在需要局部刷新的地方進行調(diào)用,刷新方法。

? ? _reloadTextSetter(() {});

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容