在 中 Flutter,主要有两种类型 Widgets: Stateless 和 Stateful。 这是 Widgets 在构建应用程序用户界面时发挥重要作用的两种关键类型。
Stateless Widgets
-
Stateless Widgets 没有 widgets 任何状态并且在创建后不会改变。 当应用程序的状态发生变化时, Stateless Widgets 使用新值重新绘制,但不保留任何状态。
-
Stateless Widgets 适用于不会改变的基本 UI 组件。 示例:
Text, Icon, Image, RaisedButton
. -
Stateless Widgets 通过继承 StatelessWidget 类并实现 build() 方法来返回 UI 表示来创建。
Stateful Widgets
-
Stateful Widgets 是 widgets 有状态并且可以在运行时改变的。 当状态发生变化时, Stateful Widgets 自动重绘以反映新的变化。
-
Stateful Widgets 通常当您需要需要存储状态并根据用户交互进行更改的交互式 UI 组件时使用。 例子:
Form, Checkbox, DropdownButton.
-
Stateful Widgets 通过继承 StatefulWidget 类并与单独的 State 类结合来创建,用于存储状态和管理 UI 更新。
结论:
Stateless 和 Stateful Widgets 是 中的基本概念 Flutter。 Stateless Widgets 用于没有状态且不改变的组件,而 Stateful Widgets 用于需要存储和改变状态的组件。 为每个组件使用适当的类型 Widgets 可以让您构建灵活且高效的用户界面。