学 Flutter 不理解 Widget/Element/Render 三棵树?啥也不是!

Posted 承香墨影

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了学 Flutter 不理解 Widget/Element/Render 三棵树?啥也不是!相关的知识,希望对你有一定的参考价值。

一、导语

Hi,大家好,这里是承香墨影!

Flutter 是 Google 发布的跨平台 UI 框架,而其中与 UI 相关的,最重要的就是 Widget & Element & RenderObject 这三棵树。

初入门的时候,会以为三棵树的节点,都是一一对应的,后来才知道并非如此。

我们在代码中写的 Widget,在运行时,会依据使用的属性「膨胀」出多个子节点结构,而他们才是真实的与 Element 对应的结构,而到了 RenderObject 又被收敛了,只有绘制类的 RenderObjectWidget 才会最终生成 RenderObject 节点,组成 RenderObject Tree,渲染到 UI 上显式。

而这一些的细节 Flutter Framework 都帮我们实现了,我们只需要跟着代码的流程去了解即可。

学 Flutter 不理解 Widget/Element/Render 三棵树?啥也不是!

以上是关于学 Flutter 不理解 Widget/Element/Render 三棵树?啥也不是!的主要内容,如果未能解决你的问题,请参考以下文章

别扯了,学Flutter,Android 就不会凉?

flutter学习之GridView

Flutter学习之动画实现原理浅析

90%的前端人,都在悄悄学Flutter

前端学不动了,但Flutter是真香

前端学不动了,但 Flutter 是真香