| 作者 |
| 亢少军 |
| 丛书名 |
| 实战 |
| 出版社 |
| 机械工业出版社 |
| ISBN |
| 9787111640127 |
| 简要 |
| 简介 |
| 内容简介书籍计算机书籍 《Flutter技术入门与实战》自2019年1月出版后,已经调拨7000+册,由于软件版本更新快,第2版根据最新版本对代码进行了全面更新,并增加了动画案例、插件理论和案例、Dio网络请求、Fluro企业级路由、Provider状态管理等,本书内容全面、案例丰富,对代码进行了大量注释,最后还有综合案例分析,可帮助初学者快速掌握这个跨平台框架。 |
| 目录 |
| 第2版前言 第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 |