简介
要在 Flutter 中构建任何应用程序,我们必须创建一个 widget 类,这是 Flutter 应用程序的构建块。Flutter使用widget来创建现代移动应用程序。
Flutter中的部件被分为两种类型:无状态部件和有状态部件。考虑到这一点,我们将看看Flutter中的无状态和有状态部件是什么,并解释它们的区别。
让我们从这个问题开始。在Flutter中,widget的状态是什么?
小组件的状态
状态是指在构建时间内同步读取部件类的信息–也就是说,当部件在屏幕上显示时,如果信息在其生命周期内被改变,则可能发生变化。
Flutter有几个内置的小组件,它们都被分为有状态和无状态小组件。
无状态小组件
一个无状态的部件在Flutter应用程序的运行期间不能改变其状态。这意味着无状态小组件在应用程序运行时不能被重新绘制。出于这个原因,外观和属性在小组件的整个生命周期内保持不变。
当我们所描述的用户界面的一部分不依赖于任何其他部件时,无状态部件就很有用。无状态部件的例子是文本、图标、图标按钮和凸起按钮。
这是一个无状态部件的例子。
class StatelessScreen extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
home: Scaffold(
appBar: AppBar(
title: Text('LogRockets'),
backgroundColor: Colors.blueGrey[600],
),
backgroundColor: Colors.white,
body: Container(),
),
);
}
}
我们

文章介绍了Flutter应用程序的基础构建块——部件(Widget),分为无状态部件和有状态部件。无状态部件在运行时无法改变状态,适用于不需更新的UI元素,如文本、图标。有状态部件则可以在运行时重绘自身,适用于动态变化的用户界面,如按钮。文章通过示例代码展示了两者的使用,并强调了setState()方法在有状态部件中的作用。最后,文章提供了两者之间的对比,帮助开发者选择合适的部件类型。
最低0.47元/天 解锁文章
425

被折叠的 条评论
为什么被折叠?



