剛剛遇到一個問題,就是在,點擊收款方式按鈕后。點擊確定,回調給頁面時,調用setState進行刷新,然后發生了卡頓。眾所周知,只要調用setState,就會當前的widget進行全部刷新很消耗性能。所以。頁面東西很多的時候,會卡頓一下。所以如果頁面很復雜,最好不要直接使用setState刷新。
解決辦法 接下來為了解決這個問題。即將使用gex進行代碼重構。
1: 把封裝的widget狀態去掉下划線,暴露出來。
_ MainSelectBtnState 改成 MainSelectBtnState
2.使用GlobalKey綁定需要刷新的狀態
3.在封裝的widget中定義方法。等待觸發
4.使用 currentState調用要刷新的widget。 這樣就解決了全局刷新,只會局部刷新的問題