解决刚刚遇到的Flutter卡顿,局部刷新问题。

刚刚遇到一个问题,就是在,点击收款方式按钮后。点击确定,回调给页面时,调用setState进行刷新,然后发生了卡顿。众所周知,只要调用setState,就会当前的widget进行全部刷新很消耗性能。所以。页面东西很多的时候,会卡顿一下。所以如果页面很复杂,最好不要直接使用setState刷新。

解决办法  接下来为了解决这个问题。即将使用gex进行代码重构。

1: 把封装的widget状态去掉下划线,暴露出来。

_ MainSelectBtnState 改成  MainSelectBtnState

2.使用GlobalKey绑定需要刷新的状态

 3.在封装的widget中定义方法。等待触发

 4.使用 currentState调用要刷新的widget。 这样就解决了全局刷新,只会局部刷新的问题

原文地址:https://www.cnblogs.com/xsiOS/p/15663144.html