响应式小工具简介


浏览:598 次

Widgets Introduction Flutter深受React的影响,采用了声明性UI编写方法,这自然依赖于扮演此角色的官方小部件Virtual DOWM。在Flutter中,我们可以说一切都是一个小部件。因此,在Flutter的开发中,小部件通常是逐层嵌套的。Flutter如何确保嵌套过深的性能?

Widget树上的Widget节点越多,要通过Diff算法重建的部件的范围就越精确和越小。UI渲染的主要性能瓶颈是Widget节点的重建

Dart语言的对象模型和GC模型优化了小对象的快速读取分配和回收。小工具是正式的小对象

基本部件Flutter附带了一组强大的基本部件。下面列出了一些常用的小部件:

文本:文本小部件可用于在app中创建样式文本。

行、列:这两个灵活的小部件允许您在水平(行)和垂直(列)方向上创建灵活的布局。它是基于web flexbox布局模型设计的。

堆叠:堆叠小部件不是线性(水平或垂直)放置的,而是按照绘图顺序堆叠在一起。您可以使用PositionedWidget作为堆栈的子窗口小部件,以相对于堆栈的顶部、右侧、底部和左侧定位它们。堆栈是基于Web中的绝对位置布局模型设计的。

容器:容器小部件可用于创建可见的矩形元素。容器可以使用BoxDecoration进行装饰,例如背景、边框或阴影。容器还可以设置外部边距、内部边距和大小限制。此外,Container可以使用矩阵在3D空间中进行转换。

Stateful Widget和StatelessWidget的区别在于,StatelessWidget是一个不需要状态更改的小部件,它没有需要管理的内部状态。当您描述的用户界面部分不依赖于对象本身和小部件的BuildContext中的配置信息时,无状态小部件非常有用。AboutDialog、CircleAvatar和Text都是StatelessWidget的子类。

有状态小部件是具有可变状态的小部件。您需要使用State类中的setState方法来管理StatefulWidget的状态更改。调用setState告诉Flutter框架状态已更改,Flutter将重新运行构建方法,以便app可以应用最新状态。

状态是,在构建小部件时可以同步读取的信息可能会在小部件的生命周期中发生变化。小部件实现者有责任确保在状态发生变化时及时通知状态变化。当可以动态更改小部件时,需要有状态的小部件。例如,通过在表单中键入或移动滑块来更改小部件的状态。或者,它可以随时间改变-或者数据推送更新UICheckbox、Radio、slider、InkWell、form和TextField是有状态的小部件和StatefullWidget的子类。

相关资讯:
农产品电子商务向企业个人农产品电子贸易方向发展的效益

农产品电子商务向企业个人农产品电子贸易方向发展的效益

查看
Web 3.0技术的基本方向

Web 3.0技术的基本方向

查看
认知

认知

查看
面向对象的

面向对象的

查看
2018-12-25

2018-12-25

查看