一、 Flutter 探究系列的蓝图
现在 Flutter
小册又多了一位成员,这是对 Flutter 而言至关重要的一个探究模块 — 布局
。五本小册的创作历程,也是我自己对 Flutter
结构深化探究的过程。其间经历了许多困难,也得到了许多收成。
-
Flutter 布局探究
:《Flutter 布局探究 – 星火相传》 -
Painting 制作模块
: 《Flutter 制作攻略 – 妙笔生花》 -
Gestures 手势模块
: 《Flutter 手势探究 – 指掌全国》 -
Animation 动画模块
:《Flutter 动画探究 – 流光幻影》 -
Flutter 滑动探究
:《Flutter 滑动探究 – 相得益彰》
想当初仅仅为了好玩,写了一本 《妙笔生花》 ,并没有料想到会一步步发展到现在的局势。到现在,五本小册
的面世,已经勾勒出深化了解 Flutter
的雏形,也为全面知道 Flutter
打下了一个坚实的根底。最终还剩余 最困难
和最简略
两个 最难写
的部分, 就能够完成 七剑合璧
了。
让没有编程根底的人也能摆正对 Flutter
认知的 思想级启蒙
读物 —- Flutter 言语根底 - 梦始之地
;对 Flutter
国际结构层运转原理的探究 —- Flutter 烘托机制 - 聚沙成塔
。当你看完 烘托机制
的小册,再回到 梦始之地
,你会体会到一路的生长,和当初稚嫩懵懂的夸姣,这个循环就算我想铸造的东西。
这七剑表面上是对 Flutter
国际的揭秘,但本质上是一种探究的精力、考虑的过程、对不知道应战的具象化。没有谁是一下就能认清原理的,但经过调试、经过剖析,一点点地梳理,总能拨开云雾,站在更高的境地去审视整个国际。他人能够教会你知识,但境地是本身对国际的认知程度,只取决于你的思想。
我这个人并不喜爱说教,他人怎么样其实跟我也没什么太大的联系。国际这么大,总会有自甘堕落的可怜人,总会有无知无畏的杠精,总会有恃才傲物的娇子,总会有抱残守缺的顽固派,总会有好逸恶劳还想一步登天的梦境者,总会有迫于生计备受压迫的行路人。
我不能站在他人的生长环境去了解他们的思想,所以不想对任何人的生计方式指点拨点。比方作为音乐家你深知音乐的魅力,就想让所有人都学习乐理,懂得音乐,都成为音乐家。殊不知,并不是所有人都能够活在典雅之中。有些人为了生计拼尽全力,在他疲累之时,与其让他学习乐理,不如为他奏上一曲,舒缓紧绷的思绪。
想将自己以为夸姣强行施加给他人,这种思想偏激是很风险的行为。无法站在他人生计环境中的点拨,便是 “何不食肉糜?”
的真实表现。所以,我并不能强求所有人都能去探究源码,都对 Flutter
有很深的了解。虽然了解原理是最好的,就像肉好吃相同,但并不是任何人都能吃到。
我所能做的,是尽自己所能,在这片海域中,建立一座桥;你走与不走,是否要在我指出的路上拓荒自己的道路,都是自己的自由。至于我为什么做要这些,那便是在 Flutter
道路上的行者奏上一曲吧。
二、 布局小册介绍
布局的重要性不言而喻,假如把 界面建立
比作 盖房子
,布局便是钢筋水泥,它是支撑界面呈现的 根基
。 假如把 界面建立
比作 征战疆场
,布局便是 调兵遣将
,呈现特定的阵型。 对于 Flutter
中的一块布局而言,最中心的有三个要点,是本册探究的中心:
1.我需求操控 [本身区域] 有多大 --- Size
2.我需求限制 [子级区域] 的范围 --- BoxConstraints
3.我需求确认 [子级区域] 偏移量 --- Offset
对于布局来说,明面上是 Widgets
层的事,但暗地里组件布局特性本质上
是 烘托目标
所决定的。组件仅仅个 特点搬运工
罢了。对源码中布局流程的了解,在一定程度上也能透过表象的 Widget
,站在更高的视角去审视 烘托目标
的效果,从而对 Flutter
结构有更深的认知。
三、 本册内容简介
模块一:让大家感知盒束缚的存在,并认知布局的特点。 这块是比较轻松的引子,会结合一些事例,从盒束缚的视点去解说看似不合理的尺寸现象,以及对布局结构有根本的认知。
模块二:开始了解常用布局组件特点和演练。 这块会选取常用的布局组件,从特点的解读去剖析它们的布局特性,最终会结合几个事例进行演练。
模块三:从源码的视点去探究组件布局特性 。 到这儿,将进入硬核的下半篇章。经过对布局组件源码的剖析,从根本上去知道各布局组件内部束缚传递、尺寸确认、偏移设置的实现。
模块四:自定义布局组件和总结篇。 这块将介绍经过 CustomSingleChildLayout
、CustomMultiChildLayout
、Flow
组件自定义布局的办法,以及怎么经过 Overlay
组件实现起浮层。经过这部分的学习,你能够更自由的操控布局,而不只拘泥于 Flutter 提供的布局组件。最终,会对本册进行一个总结。
最终:因为纯手工码字
以及认知的局限性,假如本册内容上有什么过错
、疑问
、错别字
或修正主张
,可在谈论区指正,或直接联系我进行探讨 ~
对 Flutter
布局的源码探究让我收成良多,也期望我眼中所见的光景,能够经过这本小册传达给更多人,让你也能够立于布局体系之上去见识 Flutter
国际的风采。谢谢大家一直以来的支撑 ~