Flutter 滑动探索 - 珠联璧合--掘金小册课程推荐/优惠
版权声明
本站非掘金小册官网,与官方无任何关系。我们不提供课程下载或详细内容,仅作为课程分享和推荐平台。我们鼓励大家支持正版,尊重创作者的劳动成果,这样不仅能帮助创作者持续产出优质内容,也能让自己获得更好的学习体验。请通过官方渠道购买和学习课程,感谢您的理解与支持。
课程详情
课程介绍
你将获得
- 三个层级,探索 Flutter 滑动体系的构成原理;
- 深入底层,分析 Flutter 滑动机制的源码实现;
- 结合实践,掌握 Flutter 滑动相关组件的使用;
- 调试分析,领略 Flutter 框架源码展现的风采。
作者介绍
张风捷特烈,Flutter 全端开发工程师、FlutterUnit 开源项目作者。FlutterUnit 是一款帮助刚入门的朋友快速认识 Flutter 的应用,它包含绝大多数 Flutter 内置组件及绘制的展示案例。
作者本人热爱探索源码、分享知识。除了出版过《Flutter 之旅》以外,还在掘金上线了其他 4 门课程:
- 《Flutter 手势探索 - 执掌天下》
- 《Flutter 动画探索 - 流光幻影》
- 《Flutter 绘制指南 - 妙笔生花》
- 《Flutter 布局探索 - 薪火相传》
- 公众号
编程之王
小册介绍
为什么选择探索滑动体系
我们日常开发中接触到的关于滑动的知识只是冰山一角,很多人也只是了解 ListView
、PageView
等几个组件的使用而已,甚至连 NestScrollView
和 CustomScrollView
都用不好,遇到 Sliver 就头大,完全不知道该怎么玩。我在一开始对它们也没有很深刻的认识。
当认清 Flutter 滑动体系的构成及运作逻辑后,从源码的角度去认识这些组件的构成和用途,自然能站在更高的维度来使用它们。在遇到关于滑动的异常或新需求时,可以从更广阔的视角去看待问题,而非只知皮毛,管中窥豹。
对源码的探索本身就是一件很有意义的事,从中可以看到创作者对类结构的定义,如何处理类与类之间的关系。对于一些精彩的逻辑处理,可能也会激发我们的灵感。当我们通过源码可以读懂他们所描绘的 风采
,在手指滑动列表的那一刻,目之所见已不再仅是视口的滑动,还有滑动机制中的各个对象如何像齿轮一样啮合,驱动整个体系的运转。
为何选择滑动体系作为第四本小册内容
滑动机制
可以看做是对框架层的一个承上启下体系。向上可以连接到 滑动组件 Widget 层
,向下可以连接到 手势 Gesture 层
、动画 Animation 层
;在 视口
和 Sliver
内容相关实现中,还会涉及到 渲染 Rendering 层
的知识。所以选取对 滑动体系
的探索作为第四本 Flutter 小册的内容。
另外,也是很多朋友希望深入了解一下 滑动体系
,但又苦于看不懂源码。我也比较像深入认识一下 滑动体系
,所以决定潜心探索一下,将其过程记录下来,分享给大家。
本册内容简介
第一部分主要目的是对 视口滑动
的构成进行初步的认知,其中会通过对我们最熟悉的 ListView
进行源码分析,从而引出其背后更深层的知识,以此从源码中逐步认知构成 滑动体
所必要的成分。
第二部分是对 Scrollable
和 Viewport
这两个滑动构成要素做初步的认识。主要从成员属性的角度进行介绍,并结合源码进行分析,以此对 滑动体系
有个大致的认知,为后面的探索打下基础。
第三部分是对 Sliver
进行探索,首先通过对 Sliver
组件的使用开始介绍,然后从渲染对象的角度去分析 Sliver
组件存在的必要性。其中也包含对缓存区实现
的及 keepAlive
保活机制的探索。
最后一部分,是对滑动处理机制的探索。开始通过对 PageView
和 SingleChildScrollView
组件的源码实现进行分子,然后介绍 Notification
通知机制,在前面知识的铺垫下,最后对 ScrollableState
中拖动事件的回调处理进行分析。
对 Flutter 滑动体系的源码探索让我收获良多,也希望我眼中所见的光景,可以通过这本小册传达给更多人。谢谢大家一直以来的支持 ~
适宜人群
- 基本了解 Flutter 滑动的使用,会创建 Flutter 项目,了解 Dart 基础语法;
- 想全面了解滑动相关知识,进一步提升的Flutter工程师;
- 想提升自身读码能力或有兴趣探索源码;
- 有一颗心平气和、勇于探索的心。
课程目录
- 开篇: 认知视口滑动的构成
- 从 ListView 的源码开始谈起
- 探索 BoxScrollView 与 ScrollView 组件
- Scrollable 与 Viewport 的珠联璧合
- 探索 ScrollView 一族其他滑动组件
- 探索 ViewPort 组件成员属性
- 探索 Scrollable 组件成员属性
- 再探索 ScrollView 一族的实现
- 探索 SliverConstraints 滑块约束
- 探索 Sliver 组件吸顶效果
- 探索 NestedScrollView 嵌套滑动
- 探索 Sliver 一族组件的必要性
- 探索 PageView 源码实现
- 探索滑动中加载和缓存的实现
- 探索 SingleChildScrollView 源码实现
- 探索 Notification 通知机制
- 探索 ScrollableState 动画处理逻辑
- 探索 ScrollableState 滑动处理逻辑