本文已授权公众号【缦图技术团队】发布
一、概述
Flutter
是谷歌推出的高性能、跨端UI
框架,可以通过一套代码,支持 iOS
、Android
、Windows/MAC/Linux
等多个平台,且能达到原生性能。Flutter
也可以与平台原生代码进行混合开发,其更新迭代速度很快,技术发展也日趋成熟,如今已经有很多公司在使用这种新跨端技术。我们知道在 flutter
中可以使用 setState()
来刷新 StatefulWidget
的 UI
,这会遍历调用子 Widget
的 build()
重构视图。当一个页面内容比较复杂时,会包含多个 widget
,如果直接调用根组件的 setState()
,会遍历所有子 Widget
的 build()
,刷新整个页面,这样会造成很多不必要的开销,刷新的成本相对较大。如果数据很多接口响应又慢的话,还会有界面闪烁的现象。那么 flutter
到底是如何实现界面刷新的,调用 setState({})