-
内容大纲
本书主要介绍Flutter框架跨平台开发相关知识,常用学习网址的介绍、相关软件的安装、基本组件的使用、布局、跳转和路由、样式、动画、程序的交互和手势识别、数据存储与访问、状态管理、HTTP网络异步访问、与服务器端数据的交互等内容。书中以实用为主,理论和实践相结合,结合第三方插件,组件中属性和方法使用的说明,从单个组件的使用到组件之间的组合,重点讲解了与服务器端数据的交互。通过大量代码的演示和讲解,从小项目到一个相对完整的课程项目。能综合运用各种组件,熟练掌握Flutter框架进行软件项目设计开发。为了便于读者理解,书中的每章都配发有操作和讲解演示视频。
另外,通过书中的心情驿站项目案例,详细阐述了如何使用Flutter框架进行跨平台移动开发,内容翔实、步骤清晰,为实际软件项目开发工作提供了现实的参考解决方案。
本书可作为Flutter初学者的入门书籍,也可作为从事跨平台移动开发的技术人员及培训机构的参考资料。 -
作者介绍
董运成,长期从事软件开发和培训工作,曾以公司合伙人、项目经理或程序员角色开发过交通、税务、房产、卫生、通信等行业应用软件,取得了较好的经济效益和社会效益。并以此为依托,发表过多篇论文,获得省、地级科学技术成果多项,取得多项技术专利等。开源项目软件的积极参与者与倡导者,软件开发经验丰富,熟悉C/C++、Java及相关软件架构,对移动开发拥有丰富的实战经验。 -
目录
第1章 Flutter框架学习(14min)
1.1 Flutter官方网址
1.2 Flutter其他学习网址
1.3 在线运行Dart和Flutter程序
1.4 常用的学习方法
第2章 Flutter开发环境搭建(17min)
2.1 国内网络环境的配置
2.2 Git软件的安装
2.3 Java软件的安装和开发环境的配置
2.4 Flutter软件的安装和开发环境的配置
2.5 集成开发环境的安装和开发环境的配置
2.5.1 Android Studio的下载和安装
2.5.2 VS Code的下载和安装
2.6 手机设备的配置
2.7 使用Flutter Doctor命令测试运行环境
第3章 Flutter运行环境介绍(12min)
3.1 界面的介绍
3.2 创建Flutter工程
3.3 VS Code中Flutter编辑技巧
3.3.1 组件提示功能
3.3.2 在Flutter工程中插入和提取组件
3.3.3 自动导入包
3.3.4 快捷键的使用
3.4 Flutter项目的分析与调试
3.4.1 Flutter项目分析
3.4.2 程序的调试
3.4.3 断言表达式
第4章 Dart语言介绍(43min)
4.1 在VS Code中运行Dart语言
4.2 Dart语言基础知识
4.2.1 日期和时间类的用法
4.2.2 符号!、?和??的用法
4.2.3 final和const使用区别
4.2.4 dynamic 和var的区别
4.2.5 late的用法
4.2.6 List初始化、添加元素、取值
4.2.7 ...的用法
4.2.8 List循环输出、匿名函数、箭头函数
4.2.9 List.generate的用法
4.2.10 Set的用法
4.2.11 Map的用法
4.2.12 fold的用法
4.3 面向对象编程
4.3.1 类的定义
4.3.2 类的执行
4.3.3 类的继承
4.3.4 默认参数、可选参数、位置参数
4.3.5 混入Mixins
4.3.6 ..的用法
4.3.7 异常Exception
4.4 异步操作
4.4.1 什么是异步
4.4.2 Future异步的实现
4.4.3 Streams流操作
第5章 Flutter框架基本组件的使用(51min)
5.1 Flutter架构组成
5.2 MaterialApp Flutter材质应用
5.3 Scaffold脚手架
5.4 标题栏的显示
5.5 Container容器组件
5.6 文本Text组件
5.7 图标Icon组件
5.8 图片Image组件
5.8.1 网络图片的显示
5.8.2 显示本地图片
5.8.3 加载图片过程中,显示进度条信息
5.9 Flutter按钮类型
5.9.1 TextButton文本按钮
5.9.2 OutlinedButton强调按钮
5.9.3 ElevatedButton有阴影的按钮
5.9.4 IconButton图标按钮
5.9.5 FloatingActionButton浮动按钮
第6章 理解Flutter组件(15min)
6.1 无状态组件类StatelessWidget
6.2 有状态组件StateWidget
6.3 有状态组件状态类的生命周期
6.4 ToggleButtons切换按钮
6.5 状态类中的生命周期变化
第7章 Flutter样式(57min)
7.1 Text文本样式修饰
7.2 Container容器修饰类的用法
7.2.1 形状修饰ShapeDecoration
7.2.2 盒子修饰BoxDecoration
7.3 字体的应用
7.4 主题的使用
7.5 国际化
第8章 Flutter布局(58min)
8.1 Padding内边距的用法
8.2 Margin外边距的用法
8.3 Align对齐方式的用法
8.4 Center居中组件的用法
8.5 Expanded扩展组件的使用
8.6 Flexible的使用
8.7 Flex的使用
8.8 Row行组件的使用
8.9 Column列组件的使用
8.10 Spacer组件的使用
8.11 SingleChildScrollView
8.12 屏幕尺寸的获取
8.13 屏幕的适配flutter_screenUtil
8.14 布局的基本原则
8.15 布局中组件视图的使用
第9章 仿银行App首页布局实例(50min)
9.1 第三方插件的使用
9.2 屏幕设计尺寸
9.3 标题栏的设计
9.4 屏幕内容的滚动显示
9.5 按钮功能实现
9.6 新闻头条
9.7 轮播图的显示
9.8 子标题的实现
9.9 特色专区
9.10 手机充值和网点服务
9.11 品牌专区
第10章 手势识别和对话框(41min)
10.1 Listener监听组件
10.2 MouseRegion鼠标区域组件
10.3 GestureDetector手势识别组件
10.4 Draggable和DragTarget拖曳组件
10.5 InkWell和InkResponse响应组件
10.6 Dialog对话框的使用
10.6.1 Dialog对话框基本用法
10.6.2 AlertDialog
10.6.3 SimpleDialog
10.7 SnackBar底部信息提示框
第11章 跳转、路由(37min)
11.1 Navigator类的使用
11.1.1 页面的跳转和返回
11.1.2 从一个页面返回数据
11.1.3 将数据传递到新的页面
11.2 使用命名路由
11.3 onGenerateRoute的用法
11.4 路由的更高级用法
11.5 第三方路由导航插件Fluro
第12章 JSON和Dio数据处理(17min)
12.1 JSON数据格式及解析
12.2 将JSON解析为Dart对象
12.3 通过Dio请求数据
第13章 表单和验证(60min)
13.1 TextFormField文本框的使用
13.1.1 文本框的实现
13.1.2 得到文本框的值
13.1.3 带有验证功能的表单
13.2 和服务器端的交互——注册功能的实现
13.3 表单中的异步处理
13.4 日期和时间组件
13.5 下拉列表、复选框、单选按钮
13.5.1 下拉列表Dropdown
13.5.2 复选框CheckBox
13.5.3 单选按钮Radio
13.6 开关组件Switch
13.7 Slider滑块的使用
13.8 单选或复选组件的使用
第14章 Flutter高级控件的使用(128min)
14.1 Card卡片组件
14.2 PageView组件
14.3 Stack组件
14.4 ListView组件
14.4.1 ListView()的使用
14.4.2 ListView.separated()的使用
14.4.3 Dismissible可以滑动删除某一项
14.5 Drawer抽屉组件
14.6 GridView网格视图组件
14.6.1 固定数量平铺的网格视图
14.6.2 大量网格视图的显示
14.7 TabBar选项卡式布局
14.7.1 选项卡在上面的布局
14.7.2 选项卡在底部的布局
14.7.3 图片的左右滑动效果
14.8 CustomScrollView自定义滚动视图
14.9 可滚动组件滚动控制及监听
14.9.1 滚动控制器ScrollController
14.9.2 滚动通知和监听
第15章 Flutter动画(32min)
15.1 隐式动画
15.1.1 AnimatedContainer对容器的属性进行动画显示
15.1.2 TweenAnimationBuilder的使用
15.2 显式动画
15.2.1 AlignTransition显式动画
15.2.2 AnimatedBuilder的用法
15.2.3 显式动画和隐式动画的区别
15.3 组件动画Hero
15.4 TweenSequence的用法
15.5 页面间跳转实现动画效果
15.6 自定义绘图及动画
15.6.1 自定义绘图
15.6.2 实现自定义绘图的动画效果
15.6.3 动画的视图调试
15.7 第三方动画实现方式
第16章 数据存储与访问(28min)
16.1 shared_preferences插件的使用
16.2 文件读写
16.3 SqLite的使用
16.3.1 SQL语法及常用的用法
16.3.2 使用第三方插件sqlflite创建记事本
第17章 Flutter状态管理(25min)
17.1 为什么要使用状态管理
17.2 什么是状态
17.3 使用InheritedWidget实现数据共享
17.4 使用InheritedModel实现局部刷新
17.5 使用Provider管理状态
17.5.1 Provider的基本使用
17.5.2 Provider读取方式
17.5.3 ChangeNotifierProvider监听值的变化
17.5.4 通过FutureProvider异步加载数据
17.5.5 使用StreamProvider得到时间流
第18章 心情驿站系统框架的搭建(51min)
18.1 系统结构
18.2 工程结构图
18.3 公共组件
18.4 第三方插件
18.5 程序的入口类main.dart
18.6 跳转到启动页面
18.7 网络连接的实现
18.8 注册功能的实现
18.9 主页面底部选项卡的实现
18.10 选项卡文本点滴的实现
18.11 选项卡中图片美景的实现
18.12 选项卡“我的”的实现
18.12.1 “我的”主程序界面的实现
18.12.2 关于功能的实现
18.12.3 主题的修改
18.12.4 我的收藏功能实现
18.12.5 个人设置功能的实现
18.13 修改应用程序图标
附录A
A.1 Postman的使用
A.2 后台服务器JSON数据
参考文献
同类热销排行榜
- 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年,恰如一部四部曲的年代大戏。技术突变、产品迭代、产业升级、资本对接...