第 3 天:核心机制——万物皆 Widget 与状态入门
·
摘要:Flutter 的 UI 构建哲学是“声明式”。本文讲解 StatelessWidget 与 StatefulWidget 的生命周期,并演示如何在鸿蒙设备上进行热重载调试。
前言: 在鸿蒙原生开发中,我们习惯操作组件实例;但在 Flutter 中,你只需要描述 UI 应该长什么样。
一、 核心概念:Widget 树
-
StatelessWidget:静态展示,无状态变化。
-
StatefulWidget:包含状态,通过
setState()触发界面刷新。
二、 生命周期详解
-
initState():仅执行一次,用于初始化数据。
-
build():核心渲染函数,会被多次调用。
-
dispose():组件销毁时调用,务必在此处关闭监听器或控制器。
三、 避坑指南:热重载 (Hot Reload)
-
失效场景:修改了全局变量初始化、更改了
initState逻辑或修改了 native 代码(ArkTS 侧)时,热重载不会生效,必须点击“热重启” (Hot Restart) 或重新运行。 -
内存陷阱:避免在
build方法内创建复杂的对象(如File或Database实例),否则会导致页面滑动卡顿。
总结: 理解了 Widget 的生命周期,你就掌握了控制 Flutter 页面的钥匙。
更多推荐

所有评论(0)