- StatefulWidget 应对有交互、需要动态变化视觉效果的场景
- StatelessWidget 则用于处理静态的、无状态的视图展示
- 当你所要构建的用户界面不随任何状态信息的变化而变化时,需要选择使用 StatelessWidget,反之则选用 StatefulWidget。前者一般用于静态内容的展示,而后者则用于存在交互反馈的内容呈现中。
- StatefulWidget 是以 State 类代理 Widget 构建的设计方式实现
- Widget 是不可变的,更新则意味着销毁 + 重建(build)。StatelessWidget 是静态的,一旦创建则无需更新;而对于 StatefulWidget 来说,在 State 类中调用 setState 方法更新数据,会触发视图的销毁和重建,也将间接地触发其每个子 Widget 的销毁和重建。
- 避免滥用StatefulWidget,这样会引起性能损耗。
- 开发过程中可以通过判断“通过父 Widget 初始化时传入的静态配置能否在初始化过程中完全确定子Widget的展示样式”这一原则来判断是否使用StatefulWidget。
Widget中的State到底是什么?
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- Flutter 的设计思想是“一切皆 Widget”。 一、demo解读 我们新建一个Flutter项目,默认生成...
- 本文介绍了Flutter应用程序中Widget,State,Context和InheritedWidget的重要概...
- 前言 在学习 Flutter 中,我们了解到 Widget 有 StatelessWidget 和 Statefu...
- 一、编程范式 在了解StatelessWidget和StatefulWidget之前,我们需要先了解Flutter...