移动应用开发技术丛书 Flutter实战
作者:杜文 编著
出版时间: 2020年版
丛编项: 移动应用开发技术丛书
内容简介
本书由浅入深地介绍了Flutter技术和开发流程,包含大量示例、图片,并含配套示例源码,可帮助读者循序渐进地掌握Flutter开发技术。本书分为入门篇、进阶篇、实例篇三篇。 ●入门篇:讲解Flutter技术的背景和简介、Flutter各种类型的Widget以及如何构建UI。 使读者掌握如何使用Flutter来构建UI。 ●进阶篇:讲解Flutter中的事件机制、动画、自定义组件、文件、插件、国际化以及Flutter的核心原理等。 使读者对Flutter整体构建及原理有一个深入的认识。 ●实例篇:以GitHub APP为例,把理论转为实际案例,介绍一个完整的Flutter应用的开发。 使开发者全面了解完整的Flutter APP开发流程。
目录
前 言
【第一篇 入门篇】
●第1章 起步 2
1.1 移动开发技术简介 2
1.2 初识Flutter 10
1.3 搭建Flutter开发环境 14
1.4 Dart语言简介 26
●第2章 第一个Flutter应用 36
2.1 计数器应用示例 36
2.2 路由管理 42
2.3 包管理 51
2.4 资源管理 55
2.5 调试Flutter应用 60
2.6 Flutter异常捕获 67
●第3章 基础组件 73
3.1 Widget简介 73
3.2 状态管理 87
3.3 文本及样式 94
3.4 按钮 99
3.5 图片及ICON 102
3.6 单选开关和复选框 109
3.7 输入框及表单 110
3.8 进度指示器 122
●第4章 布局类组件 127
4.1 布局类组件简介 127
4.2 线性布局(Row和Column) 128
4.3 弹性布局(Flex) 133
4.4 流式布局 136
4.5 层叠布局 139
4.6 对齐与相对定位(Align) 141
●第5章 容器类组件 146
5.1 填充(Padding) 146
5.2 尺寸限制类容器 147
5.3 装饰容器(DecoratedBox) 152
5.4 变换(Transform) 153
5.5 Container 156
5.6 Scaffold、AppBar和底部导航 158
5.7 剪裁(Clip) 166
●第6章 可滚动组件 169
6.1 可滚动组件简介 169
6.2 SingleChildScrollView 171
6.3 ListView 172
6.4 GridView 179
6.5 CustomScrollView 184
6.6 滚动监听及控制 187
●第7章 功能型组件 194
7.1 导航返回拦截(WillPopScope) 194
7.2 数据共享(InheritedWidget) 195
7.3 跨组件状态共享(Provider) 200
7.4 颜色和主题 210
7.5 异步UI更新 215
7.6 对话框详解 219
【第二篇 进阶篇】
●第8章 事件处理与通知 242
8.1 原始指针事件处理 242
8.2 手势识别 245
8.3 事件总线 253
8.4 Notification 255
●第9章 动画 261
9.1 Flutter动画简介 261
9.2 动画基本结构及状态监听 265
9.3 自定义路由切换动画 270
9.4 Hero动画 273
9.5 交织动画 275
9.6 通用切换动画组件 278
9.7 动画过渡组件 286
●第10章 自定义组件 297
10.1 自定义组件方法简介 297
10.2 组合现有组件 298
10.3 组合实例:TurnBox 301
10.4 自绘组件(CustomPaint与Canvas) 305
10.5 自绘实例:圆形背景渐变进度条 309
●第11章 文件操作与网络请求 318
11.1 文件操作 318
11.2 通过HttpClient发起HTTP请求 320
11.3 dio HTTP请求库 327
11.4 示例:HTTP分块下载 329
11.5 使用WebSockets 334
11.6 使用Socket API 338
11.7 JSON转Dart Model类 338
●第12章 包与插件 348
12.1 开发Package 348
12.2 插件开发:平台通道简介 352
12.3 开发Flutter插件 355
12.4 插件开发:Android端API实现 357
12.5 插件开发:iOS端API实现 360
12.6 Texture和PlatformView 364
●第13章 国际化 375
13.1 让APP支持多语言 375
13.2 实现Localizations 379
13.3 使用Intl包 381
13.4 国际化中的常见问题 386
●第14章 Flutter核心原理 388
14.1 Flutter UI系统 388
14.2 Element与BuildContext 390
14.3 RenderObject和RenderBox 395
14.4 Flutter运行机制:从启动到显示 403
14.5 图片加载原理与缓存 410
【第三篇 实例篇】
●第15章 一个完整的Flutter应用 422
15.1 GitHub客户端示例 422
15.2 Flutter APP代码结构 423
15.3 Model类定义 424
15.4 全局变量及共享状态 427
15.5 网络请求封装 430
15.6 APP入口及主页 435
15.7 登录页 446
15.8 多语言和多主题 449
参考文献 452