新书推荐 | Flutter技术入门与实战(第2版)

新书推荐

《Flutter技术入门与实战(第2版)》

长按二维码
了解及购买

从实战角度出发,手把手教会Flutter,案例丰富,实操性强。

编辑推荐

本书在上一版的基础上,根据Flutter最新版本对代码进行了全面更新,并增加了动画案例、插件理论和案例、Dio网络请求、Fluro企业级路由、Provider状态管理等内容,适合初学者全面掌握Flutter 。

内容简介

本书由资深架构师撰写,详细讲解Flutter的基本概念和使用技巧。既有基础知识,又有丰富示例,并包括详细案例的操作步骤,实操性强。还有配套网站提供了完整案例代码和视频课程,可帮助读者轻松掌握基础知识,快速进入实战。本书主要内容共16章。第1~2章介绍Flutter的基本概念和重要知识点。第3章简单介绍了Flutter SDK指定的Dart语言。第4~7章介绍Flutter常用组件,以及Material Design风格的组件、Cupertino风格的组件,还介绍了页面布局基础知识和技巧。第8~12章介绍Flutter的高级用法,包括如何处理手势,如何加载、处理、展示资源和图片,路由及导航是如何处理的,装饰和动画的处理等。第13章介绍Flutter插件开发。第14~16章介绍开发工具的使用技巧、测试与发布应用,以及综合案例。

作者简介

亢少军

资深开发者,创业者。专注于视频通讯技术领域。国内首本Flutter著作《Flutter技术入门与实战》作者。多年从事视频会议、远程教育等技术研发,对于Android、iOS以及跨平台开发技术有比较深入的研究和应用,作为主要程序员开发了多个应用项目,涉及医疗、交通、银行等领域。

目录

第1章 开启Flutter之旅  1

1.1 Flutter的特点与核心概念  1

1.1.1 一切皆为组件  2

1.1.2 组件嵌套  2

1.1.3 构建  3

1.1.4 处理用户交互  3

1.1.5 状态  4

1.1.6 分层的框架  5

1.2 搭建开发环境  6

1.2.1 Windows环境搭建  6

1.2.2 MacOS环境搭建  12

1.3 写第一个Flutter程序  16

第2章 Flutter基础知识  22

2.1 入口程序  22

2.2 Material Design设计风格  23

2.3 Flutter主题  23

2.3.1 创建应用主题  23

2.3.2 局部主题  25

2.3.3 使用主题  26

2.4 使用包资源  27

2.5 状态管理  31

2.5.1 有状态及无状态组件  31

2.5.2 Provider的使用  33

2.6 HTTP请求  36

2.6.1 HTTP请求方式  37

2.6.2 HttpClient请求方式  38

2.6.3 Dio请求方式  39

第3章 Dart语言简述  47

3.1 Dart的重要概念与常用开发库  47

3.2 变量与基本数据类型  50

3.3 函数  52

3.4 运算符  54

3.5 流程控制语句  58

3.6 异常处理  61

3.7 面向对象  62

3.7.1 实例化成员变量  62

3.7.2 构造函数  63

3.7.3 读取和写入对象  64

3.7.4 重载操作  65

3.7.5 继承类  66

3.7.6 抽象类  67

3.7.7 枚举类型  68

3.7.8 Mixins  69

3.8 泛型  69

3.9 库的使用  70

3.10 异步支持  71

3.11 元数据  71

3.12 注释  73

第4章 常用组件  75

4.1 容器组件  75

4.2 图片组件  77

4.3 文本组件  79

4.4 图标及按钮组件  81

4.4.1 图标组件  81

4.4.2 图标按钮组件  82

4.4.3 凸起按钮组件  83

4.5 列表组件  84

4.5.1 基础列表组件  85

4.5.2 水平列表组件  86

4.5.3 长列表组件  88

4.5.4 网格列表组件  89

4.6 表单组件  90

第5章 Material Design风格组件  94

5.1 App结构和导航组件  95

5.1.1 MaterialApp(应用组件)  95

5.1.2 Scaffold(脚手架组件)  99

5.1.3 AppBar(应用按钮组件)  101

5.1.4 BottomNavigationBar(底部导航条组件)  103

5.1.5 TabBar(水平选项卡及视图组件)  104

5.1.6 Drawer(抽屉组件)  110

5.2 按钮和提示组件  112

5.2.1 FloatingActionButton(悬停按钮组件)  112

5.2.2 FlatButton(扁平按钮组件)  114

5.2.3 PopupMenuButton(弹出菜单组件)  115

5.2.4 SimpleDialog(简单对话框组件)  117

5.2.5 AlertDialog(提示对话框组件)  118

5.2.6 SnackBar(轻量提示组件)  120

5.3 其他组件  121

5.3.1 TextField(文本框组件)  121

5.3.2 Card(卡片组件)  123

第6章 Cupertino风格组件  126

6.1 CupertinoActivityIndicator(加载指示器组件)  126

6.2 CupertinoAlertDialog(对话框组件)  127

6.3 CupertinoButton(按钮组件)  128

6.4 Cupertino(导航组件集)  129

第7章 页面布局  135

7.1 基础布局处理  136

7.1.1 Container(容器布局)  136

7.1.2 Center(居中布局)  139

7.1.3 Padding(填充布局)  140

7.1.4 Align(对齐布局)  142

7.1.5 Row(水平布局)  144

7.1.6 Column(垂直布局)  145

7.1.7 FittedBox(缩放布局)  147

7.1.8 Stack/Alignment  150

7.1.9 Stack/Positioned  152

7.1.10 IndexedStack  154

7.1.11 OverflowBox(溢出父容器显示)  155

7.2 宽高尺寸处理  157

7.2.1 SizedBox(设置具体尺寸)  157

7.2.2 ConstrainedBox(限定最大最小宽高布局)  158

7.2.3 LimitedBox(限定最大宽高布局)  159

7.2.4 AspectRatio(调整宽高比)  161

7.2.5 FractionallySizedBox(百分比布局)  162

7.3 列表及表格布局  163

7.3.1 ListView  163

7.3.2 GridView  166

7.3.3 Table  167

7.4 其他布局处理  169

7.4.1 Transform(矩阵转换)  169

7.4.2 Baseline(基准线布局)  171

7.4.3 Offstage(控制是否显示组件)  172

7.4.4 Wrap(按宽高自动换行布局)  174

7.5 布局综合示例  176

7.5.1 布局分析  176

7.5.2 准备素材  177

7.5.3 编写代码  178

第8章 手势  184

8.1 用GestureDetector进行手势检测  184

8.2 用Dismissible实现滑动删除  186

第9章 资源和图片  189

9.1 添加资源和图片  189

9.1.1 指定asset  189

9.1.2 加载asset  190

9.1.3 平台asset  192

9.2 自定义字体  194

第10章 组件装饰和视觉效果  196

10.1 Opacity(透明度处理)  196

10.2 DecoratedBox(装饰盒子)  197

10.3 RotatedBox(旋转盒子)  204

10.4 Clip(剪裁处理)  205

10.5 案例—自定义画板  209

第11章 路由和持久化  227

11.1 路由的基本应用  227

11.2 Fluro企业级路由  235

11.3 Key-Value存储简介  240

11.3.1 shared_preferences的应用  241

11.3.2 shared_preferences的实现原理  244

11.4 文件存储  246

11.5 Sqflite的应用  249

11.5.1 常用操作方法  249

11.5.2 客户表操作示例  251

第12章 动画  256

12.1 动画的基本概念  256

12.2 Flutter的动画相关类  257

12.2.1 Animation简介  258

12.2.2 AnimationController(动画管理类)  258

12.2.3 CurvedAnimation(非线性动画类)  259

12.2.4 Tween(补间值生成类)  260

12.2.5 Listeners和StatusListeners(动画监听类)  261

12.2.6 动画控制流程  262

12.3 动画示例  262

12.3.1 字体放大动画  262

12.3.2 缓动动画  266

12.3.3 遮罩动画  269

12.3.4 数字变化动画  272

12.3.5 图表动画  274

12.4 动画组件  277

12.4.1 用AnimatedOpacity实现渐变效果  277

12.4.2 用Hero实现页面切换动画  279

第13章 Flutter插件开发  282

13.1 获取系统版本插件  282

13.1.1 新建插件  282

13.1.2 运行插件  285

13.1.3 示例代码分析  286

13.2 电池电量插件  293

13.2.1 新建插件  293

13.2.2 插件上层处理  293

13.2.3 Android原生层处理  295

13.2.4 iOS原生层处理  300

13.2.5 测试插件  304

13.3 Channel详解  308

13.3.1 通道名称  309

13.3.2 通信工具BinaryMessager  309

13.3.3 消息编解码器Codec  309

13.3.4 消息处理器Handler  310

13.4 PlatformView显示原生视图  311

13.4.1 新建插件  311

13.4.2 插件上层处理  311

13.4.3 Android原生层处理  314

13.4.4 iOS原生层处理  317

13.4.5 测试插件  321

第14章 开发工具及使用技巧  324

14.1 IDE集成开发环境  324

14.1.1 Android Studio / IntelliJ  324

14.1.2 Visual Studio Code  330

14.2 Flutter SDK  337

14.3 使用热重载  338

14.4 格式化代码  339

14.5 Flutter组件检查器  340

第15章 测试与发布应用  343

15.1 测试应用  343

15.1.1 简介  343

15.1.2 单元测试  344

15.1.3 Widget测试  345

15.1.4 集成测试  346

15.2 发布Android版App  348

15.2.1 检查App Manifest  348

15.2.2 查看构建配置  349

15.2.3 添加启动图标  350

15.2.4 App签名  350

15.2.5 构建发布版APK并安装在设备上  353

15.3 发布iOS版App  353

15.3.1 准备工作  353

15.3.2 在iTunes Connect上注册应用程序  353

15.3.3 注册一个Bundle ID  354

15.3.4 在iTunes Connect上创建应用程序记录  355

15.3.5 查看Xcode项目设置  355

15.3.6 添加应用程序图标  356

15.3.7 准备发布版本  358

15.3.8 将应用发布到App Store  360

第16章 综合案例  362

16.1 即时通信App界面实现  362

16.1.1 项目介绍  362

16.1.2 项目搭建  363

16.1.3 入口程序  366

16.1.4 加载页面  367

16.1.5 应用页面  368

16.1.6 搜索页面  375

16.1.7 聊天页面  379

16.1.8 好友页面  383

16.1.9 “我的”页面  390

16.2 企业站App实现  394

16.2.1 项目介绍  394

16.2.2 项目搭建  396

16.2.3 入口程序  399

16.2.4 加载页面  401

16.2.5 工具及配置文件处理  402

16.2.6 Fluro路由处理  404

16.2.7 Dio请求方法封装  405

16.2.8 索引页面  406

16.2.9 首页  410

16.2.10 首页轮播图  411

16.2.11 首页最新产品列表  412

16.2.12 产品页面  419

16.2.13 产品详情页面  423

16.2.14 “联系我们”页面  428

你与世界

只差一个

公众号

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值