-
内容大纲
本书采用由浅入深的方式讲解Flutter技术原理,内容翔实、面面俱到。通过阅读本书,读者能够掌握如何使用Flutter编写跨平台移动客户端应用,并且对应用到的组件有透彻的理解。
本书分为三篇,共12章。基础知识篇(第1~5章)概述Dart核心语言基础,通过视频讲解来概述Flutter开发环境搭建,纵向概述Flutter开发中使用的基础组件(如Text、Image)、UI布局组件(如Column)、滑动组件(如NestScrollView)、功能性组件(如手势识别)等;核心功能篇(第6~10章)涵盖动画、弹框、绘图、文件操作、Flutter与Android和iOS原生的消息通信、数据持久化、网络请求等;实战应用篇(第11、12章),将前两篇讲解内容加以应用,并补充开发细节,如应用图标配置、打包发布、权限请求、各种工具类封装等,此外还提供一个App的基础架构。
本书面向Flutter初学者,可供Web前端、iOS开发、Android的开发人员,以及想更进一步了解Flutter并进阶实战的技术人员阅读。 -
作者介绍
赵龙,一个爱骑自行车的程序员,也喜欢喝点茶,致力于分享自己的所感所悟,为移动应用程序开发生态圈的建设贡献自己的一份力量。现任知轮科技大前端部门架构师,兼任山西软为科技有限公司技术顾问,CSDN认证年度博客专家,CSDN知名专栏作者,网易云课堂“玩转大前端”网校创始人。先后从事过Java EE、Android开发架构、iOS开发、小程序开发、产品设计、项目管理学等领域的工作,并在大量的实践中积累了丰富的经验,也形成了一套完整的移动互联网开发解决方案,在各大技术社区分享了共1000多篇技术文章,并发布了“Flutter从简到详”系列视频教程。 -
目录
基础知识篇
第1章 Flutter开发起步(42min)
1.1 Flutter开发入门基础
1.1.1 Flutter环境搭建概述
1.1.2 Dart语言与Flutter概述
1.2 Dart语言核心基础
1.2.1 Dart变量与方法
1.2.2 Map、List、Set的基本使用概述
1.2.3 Dart中的流程控制
1.2.4 Dart异常(Exception)处理
1.3 Flutter项目创建与配置文件
1.3.1 pubspec配置文件中依赖库引用说明
1.3.2 图片等资源管理配置
1.3.3 Flutter App的调试技巧
1.3.4 Flutter Widget基本概述
1.4 小结
第2章 Flutter基础组件核心基础
2.1 MaterialApp用来搭建程序的入口
2.1.1 路由配置
2.1.2 语言环境配置
2.2 Scaffold用来搭建页面主体
2.2.1 AppBar用来配置页面的标题
2.2.2 FloatingActionButton悬浮按钮效果
2.2.3 侧拉页面Drawer
2.2.4 常用底部导航菜单栏
2.2.5 小提示框SnackBar
2.3 Text用来显示文件段落
2.3.1 Text文本的常用属性配置
2.3.2 TextStyle用来配置文本显示样式
2.3.3 RichText实现多种文本风格组合显示
2.3.4 SelectableText实现文件显示
2.4 TextField用来实现文本输入功能
2.4.1 TextField文本输入的常用属性配置
2.4.2 文本输入框的边框配置
2.4.3 TextField输入内容的监听与获取
2.5 按钮实现用户单击事件
2.5.1 常用按钮Button概述
2.5.2 抖动按钮
2.5.3 ActionChip胶囊组合按钮
2.5.4 悬浮拖动按钮
2.6 其他常用Widget概述
2.6.1 Image用来显示图片
2.6.2 Container用来设置边框样式
2.6.3 ShaderMask实现利用轮廓
2.6.4 SizedBox用来限制子Widget大小
2.7 小结
第3章 Flutter UI布局排版组件核心基础(24min)
3.1 Column与Row实现线性排列
3.1.1 Column用来实现竖直方向线性排列
3.1.2 Row用来实现水平方向线性排列
3.1.3 Column与Row中子Widget按比例权重布局
3.2 非线性布局综合概述
3.2.1 Stack用来实现层叠布局
3.2.2 Wrap用来实现层叠布局
3.2.3 实现登录页面
3.3 弹框用于提示用户信息
3.3.1 showDialog显示基本弹框
3.3.2 showCupertinoDialog显示苹果风格弹框
3.3.3 showBottomSheet底部显示弹框
3.3.4 showModalBottomSheet底部弹出对话框
3.4 小结
第4章 Flutter常用组件核心基础
4.1 加载过渡指示器
4.1.1 线性指示器LinearProgressIndicator
4.1.2 圆形指示器CircularProgressIndicator
4.1.3 小菊花CupertinoActivityIndicator
4.2 单选框Radio、复选框CheckBox、开关Switch
4.2.1 单选框Radio组件
4.2.2 单选框RadioList Tile
4.2.3 复选框CheckBox
4.2.4 复选框CheckboxList Tile
4.2.5 开关Switch
4.3 手势处理
4.3.1 GestureDetector手势监听
4.3.2 Ink与InkWell
4.4 其他常用交互视觉类型组件
4.4.1 Clip裁剪系列组件
4.4.2 Card用来实现卡片效果
4.4.3 分段选择标签效果
4.4.4 手机横屏与竖屏处理
4.5 小结
第5章 滑动视图(5min)
5.1 长页面滑动视图
5.1.1 滑动组件SingleChildScrollView
5.1.2 滑动布局NestedScrollView与SliverAppBar
5.1.3 滑动组件CustomScrollView
5.2 列表数据展示
5.2.1 ListView用来构建常用的列表数据页面
5.2.2 GridView用来构建二维宫格页面
5.2.3 PageView实现页面整屏切换
5.3 滑动视图的应用
5.3.1 ListView下刷新与分页加载
5.3.2 苹果风格下拉刷新
5.3.3 PageView实现轮播图特效
5.3.4 NestedScrollView下拉刷新失效问题
5.3.5 滚动监听NotificationListener
5.3.6 ListView实现自动滚动标签效果
5.4 小结
核心功能篇
第6章 动画专题(3min)
6.1 基本动画
6.1.1 透明度渐变动画
6.1.2 缩放动画
6.1.3 平移动画
6.1.4 旋转动画
6.2 高级动画应用提升用户视觉体验
6.2.1 ColorTween颜色动画过渡
6.2.2 跳动动画效果
6.2.3 Hero屏幕共享元素动画
6.2.4 Path绘图高级动画
6.2.5 AnimatedSwitcher实现页面局部动画切换
6.2.6 左右抖动动画效果
6.3 AnimatedWidget应用分析
6.3.1 实现单击高亮自定义按钮
6.3.2 AnimatedBuilder应用实践
6.3.3 AnimatedModalBuilder应用实践
6.3.4 弹簧动画应用实践
6.4 小结
第7章 状态管理专题(75min)
7.1 入门级数据管理与更新
7.1.1 InheritedWidget数据共享
7.1.2 ValueNotifier单数据模型通信
7.1.3 ValueNotifier自定义模型通信
7.2 Stream流通信
7.2.1 多订阅流实现多组件同步数据
7.2.2 单订阅流实现计时功能
7.3 Provider状态管理
7.3.1 Provider单数据模型通信
7.3.2 Provider多数据模型通信
7.4 GetX状态管理
7.4.1 GetX路由管理功能
7.4.2 GetX局部数据更新
7.4.3 GetX依赖注入
7.4.4 GetXBinding自动管理内存
7.4.5 Obx响应式编程
7.5 小结
第8章 绘图专题
8.1 绘制基本图形
8.1.1 绘图基础知识概述
8.1.2 绘制点与线
8.1.3 绘制矩形与圆角矩形
8.1.4 绘制圆与椭圆
8.2 Path自定义图形
8.2.1 Path构建基本图形
8.2.2 二阶贝塞尔曲线绘制弧线
8.2.3 三阶贝塞尔曲线绘制弧线
8.2.4 Path依据进度实现动态绘制
8.2.5 Path结合PathMetric实现动态绘制
8.3 绘图对文本与图片方面的支持
8.3.1 绘制文本段落
8.3.2 绘制图片
8.3.3 绘制图片添加水印
第9章 混合开发专题(5min)
9.1 Flutter与原生(Android、iOS)双向通信
9.1.1 MethodChannel实现消息监听与发送
9.1.2 BasicMessageChannel实现消息监听与发送
9.1.3 EventChannel实现消息监听与发送
9.2 Flutter调用原生View
9.2.1 内嵌Android原生View
9.2.2 内嵌iOS原生View
9.3 原生项目内嵌Flutter模块
9.3.1 Android中集成Flutter模块
9.3.2 iOS中集成Flutter模块
9.4 插件开发
9.4.1 Flutter端开放Widget
9.4.2 Android端创建TextView并解析文本
9.4.3 iOS端创建WKWebView并解析文本
9.4.4 插件发布
9.4.5 插件API升级
9.5 小结
第10章 文件操作与网络请求
10.1 异步编程
10.1.1 async与await的基本使用
10.1.2 Future实现延时任务
10.1.3 Timer实现定时任务
10.1.4 FutureBuilder实现异步任务更新
10.2 文件的读写
10.2.1 资源目录assets文件读取
10.2.2 手机磁盘文件读写
10.2.3 SharedPreferences轻量级数据保存
10.2.4 sgflite数据库数据操作
10.3 网络请求
10.3.1 HttpClient网络请求操作
10.3.2 网络请求库Dio
10.3.3 选择图片插件
10.4 小结
实战应用篇
第11章 Flutter应用基础框架(28min)
11.1 App应用程序基本配置概述
11.1.1 App基本信息配置
11.1.2 Android平台开发配置
11.1.3 Android打包发布APK
11.1.4 iOS打包发布
11.2 App开发工具类概述
11.2.1 常用工具类概述
11.2.2 网络请求与页面交互状态显示
11.2.3 网络请求工具类封装概述
11.3 App应用搭建
11.3.1 Android与iOS双平台的闪屏页面
11.3.2 应用根视图基本配置
11.3.3 启动页面动态权限申请
11.3.4 加载PDF文件显示
11.3.5 滑动引导页面与倒计时页面
11.3.6 应用首页
11.4 小结
第12章 GetX架构视频应用开发(13min)
12.1 App应用程序根视图配置
12.1.1 启动页面初始化配置
12.1.2 倒计时页面架构剥离
12.2 应用首页面
12.2.1 首页面底部菜单导栏
12.2.2 应用版本检查更新
12.3 视频列表页面架构构建
12.3.1 视频列表数据与UI构建
12.3.2 视频播放控制U1页面构建
12.3.3 视频播放功能控制
12.3.4 性能优化小提示
12.4 小结
同类热销排行榜
- C语言与程序设计教程(高等学校计算机类十二五规划教材)16
- 电机与拖动基础(教育部高等学校自动化专业教学指导分委员会规划工程应用型自动化专业系列教材)13.48
- 传感器与检测技术(第2版高职高专电子信息类系列教材)13.6
- ASP.NET项目开发实战(高职高专计算机项目任务驱动模式教材)15.2
- Access数据库实用教程(第2版十二五职业教育国家规划教材)14.72
- 信号与系统(第3版下普通高等教育九五国家级重点教材)15.08
- 电气控制与PLC(普通高等教育十二五电气信息类规划教材)17.2
- 数字电子技术基础(第2版)17.36
- VB程序设计及应用(第3版十二五职业教育国家规划教材)14.32
- Java Web从入门到精通(附光盘)/软件开发视频大讲堂27.92
推荐书目
-
孩子你慢慢来/人生三书 华人世界率性犀利的一枝笔,龙应台独家授权《孩子你慢慢来》20周年经典新版。她的《...
-
时间简史(插图版) 相对论、黑洞、弯曲空间……这些词给我们的感觉是艰深、晦涩、难以理解而且与我们的...
-
本质(精) 改革开放40年,恰如一部四部曲的年代大戏。技术突变、产品迭代、产业升级、资本对接...