新書推薦:
《
希腊文明3000年(古希腊的科学精神,成就了现代科学之源)
》
售價:NT$
374.0
《
粤行丛录(岭南史料笔记丛刊)
》
售價:NT$
374.0
《
岁月待人归:徐悲鸿自述人生艺术
》
售價:NT$
286.0
《
女人的中国医疗史:汉唐之间的健康照顾与性别
》
售價:NT$
484.0
《
资治通鉴熊逸版:第四辑
》
售價:NT$
2195.0
《
中国近现代名家精品——项维仁:工笔侍女作品精选
》
售價:NT$
308.0
《
宋瑞驻村日记(2012-2022)
》
售價:NT$
539.0
《
汗青堂丛书138·帝国的切口:近代中国口岸的冲突与交流(1832-1914)
》
售價:NT$
594.0
|
編輯推薦: |
本书作者手把手带领读者进入Flutter开发世界,方法简单,效果明显,饱含作者多年的实际项目经验。书中包含大量精选案例,代码都可以下载使用。作者在个人网站收录了上百个组件的详细用法和动画效果,更加方便读者学习和查阅。
|
內容簡介: |
本书系统化介绍Flutter技术入门方法,包括基本概念,并设计了大量案例,可帮助读者快速搭建Flutter应用。全书分11章,主要内容包括:第1章介绍Flutter的发展动态及环境搭建。第2章介绍Flutter工程目录结构及打包流程。第3章介绍Flutter组件的使用及使用场景。第4章介绍Dart语言的基础语法及概念。第5~9章介绍Flutter手势、动画、文件读写、网络、路由等相关知识。第9章介绍Flutter与Android、iOS混合开发的相关知识。第10章介绍国际化开发方法。第11章介绍一个完整的Flutter案例。
|
關於作者: |
老孟
资深开发者,专注于移动端跨平台和ARVR技术领域。普华永道税务系统、交管局智能调度系统等多个大型项目的主要开发者。
老孟Flutter项目的创始人,包含大量Flutter知识的动态演示,让Flutter学起来更轻松,地址为http:laomengit.com。
|
目錄:
|
前言
第1章 Flutter简介及环境搭建1
1.1 移动端软件发展历程 1
1.2 Flutter 简介2
1.3 搭建开发环境4
1.3.1 下载Flutter SDK4
1.3.2 设置镜像地址及环境变量5
1.3.3 Android Studio的安装及设置7
1.3.4 安装Xcode9
1.3.5 检查Flutter开发环境9
1.4 本章小结10
第2章 初识Flutter项目11
2.1 创建Flutter 项目11
2.2 项目目录说明14
2.3 App调试运行15
2.3.1 Android 手机调试运行15
2.3.2 iOS手机调试运行18
2.4 设置App名称、图标21
2.4.1 Android设置App名称、图标21
2.4.2 iOS设置App名称、图标22
2.5 设置App启动页24
2.5.1 Android 设置启动页24
2.5.2 iOS设置启动页25
2.6 App 构建发布26
2.6.1 Android 构建发布26
2.6.2 iOS构建发布31
2.7 本章小结32
第3章 组件33
3.1 基础组件33
3.1.1 文本组件(Text)34
3.1.2 文本输入组件(TextField)40
3.1.3 图片组件(Image)42
3.1.4 按钮组件(Button)45
3.1.5 容器类组件(Container)47
3.1.6 容器类组件(Row和Column)48
3.2 Material 风格组件50
3.2.1 MaterialApp50
3.2.2 Scaffold51
3.2.3 AppBar55
3.2.4 BottomNavigationBar56
3.2.5 TabBar58
3.2.6 Drawer61
3.3 Cupertino风格组件62
3.3.1 CupertinoActivityIndicator62
3.3.2 CupertinoAlertDialog62
3.3.3 CupertinoButton63
3.3.4 CupertinoSlider64
3.3.5 CupertinoSwitch66
3.4 容器类组件67
3.4.1 填充布局(Padding)67
3.4.2 居中布局(Center)68
3.4.3 对齐布局(Align)68
3.4.4 固定宽高比(AspectRatio)69
3.4.5 Transform70
3.4.6 Stack71
3.4.7 流式布局(Wrap)72
3.5 列表及表格组件73
3.5.1 ListView73
3.5.2 GridView75
3.5.3 Table78
3.5.4 ExpansionTile79
3.6 项目实战:登录功能80
3.6.1 登录界面UI分析80
3.6.2 顶部Logo83
3.6.3 账号、密码输入框83
3.6.4 提交按钮87
3.6.5 底部的“服务协议”87
3.6.6 Loading 控件89
3.7 本章小结91
第4章 Dart语言基础92
4.1 Dart简介92
4.2 内置数据类型93
4.3 定义变量、常量94
4.4 定义函数95
4.4.1 普通函数95
4.4.2 可选参数96
4.4.3 匿名函数96
4.4.4 箭头函数97
4.5 运算符及条件表达式97
4.5.1 判定和转换类型的操作符97
4.5.2 三目表达式98
4.5.3 非空条件判断符98
4.5.4 级联运算符98
4.5.5 非空判断符98
4.6 分支与循环语句99
4.6.1 if..else99
4.6.2 switch99
4.6.3 基本循环for和while100
4.6.4 List遍历101
4.6.5 Map遍历101
4.7 定义类102
4.7.1 构造函数102
4.7.2 类的运算符重载103
4.7.3 extends、with、implements、abstract的用法104
4.7.4 定义私有变量106
4.8 导入包106
4.9 异常捕获107
4.10 异步编程108
4.11 泛型110
4.12 注释111
4.13 本章小结111
第5章 事件、手势处理112
5.1 GestureDetector112
5.2 GestureRecognizer116
5.3 原始指针118
5.4 实战:“左滑删除”效果119
5.5 本章小结123
第6章 动画124
6.1 动画简介124
6.2 动画基本使用126
6.3 AnimatedWidget129
6.4 AnimatedBuilder131
6.5 交错动画132
6.6 AnimatedList 135
6.7 Hero138
6.8 本章小结140
第7章 文件操作与网络请求141
7.1 获取Android和iOS文件路径141
7.2 文件夹常用操作142
7.3 文件常用操作144
7.4 HTTPClient网络请求145
7.5 dio 介绍及使用146
7.6 json数据转Model148
7.7 项目实战:记事本150
7.7.1 用记事本来写日记的效果150
7.7.2 日记的展示和添加152
7.7.3 日记的编辑和保存155
7.8 本章小结158
第8章 路由导航和存储159
8.1 路由导航159
8.2 命名路由162
8.3 shared_preferences存储数据164
8.4 SQLite存储数据165
8.5 本章小结170
第9章 混合开发172
9.1 Android与Flutter混合开发172
9.1.1 Android原生项目引入Flutter172
9.1.2 添加Flutter到Activity175
9.1.3 添加Flutter到Fragment177
9.1.4 Flutter与Android通信178
9.2 iOS与Flutter混合开发179
9.2.1 iOS原生项目引入Flutter 180
9.2.2 Flutter与iOS通信181
9.3 本章小结182
第10章 国际化183
10.1 开发的App支持国际化183
10.2 监听系统语言切换184
10.3 开发的UI支持国际化186
10.4 使用Intl189
10.5 本章小结192
第11章 项目实战:新闻客户端193
11.1 应用简介193
11.2 整体框架及导航196
11.3 轮播热门事件198
11.4 搜索页面202
11.5 设置页面207
11.6 新闻分类212
11.7 新闻列表及详情214
11.8 本章小结221
第12章 项目实战:App升级功能222
12.1 App升级功能预览及功能分析222
12.2 App升级功能提示框226
12.3
|
內容試閱:
|
自从2018年Google发布Flutter 第一个预览版以来,Flutter就受到了开发者的热捧,短短一年多的时间,Flutter在GitHub上就收获了8W+ stars,版本发布的频率超乎想象。在StackOverflow 2019年的全球开发者问卷调查中,Flutter 被选为最受开发者欢迎的框架之一,甚至超过了 TensorFlow 和 Node.js。
我一直关注大前端技术,在Flutter发布的第一时间就开始研究这个框架。后来应用到实际项目中,通过一年多的实践,我被它漂亮的UI界面、跨平台一致性、很高的开发效率所吸引。Flutter和其他跨平台方案有本质上的区别,它使用Skia渲染引擎—而其他跨平台方案(比如React Native等)则是最终转换为原生控件进行绘制,因此给我们提供了一个全新的解决跨平台问题的思路。
随着越来越多的知名公司在项目中引入Flutter,业界掀起了学习Flutter的浪潮。但Flutter是一门新的技术,学习资料比较匮乏,尤其是中文资料。为了让大家能够更好地学习Flutter技术,我把自己的学习经验整理出来,总结成这本书,希望可以帮助想学习Flutter的同行。
本书由浅入深地介绍Flutter技术,包含笔者在实际项目中遇到的大量问题及项目模块。全书共12章,各章内容介绍如下:
第1章:移动端软件及Flutter发展历程,以及环境搭建。
第2章:Flutter项目的概况,包括目录结构、调试及App构建发布流程。
第3章:Flutter组件的分类和使用细节,包括使用场景和案例。
第4章:Dart语言的基础知识及常用语法。
第5章:事件及手势处理的技术和案例。
第6章:Flutter动画原理及动画组件使用方法。
第7章:文件操作与网络请求技术,并通过项目“记事本”来展示文件操作方法。
第8章:Flutter路由相关知识及数据存储技术。
第9章:Flutter与Android和iOS的混合开发,包括如何将原生项目引入Flutter,以及相互通信。
第10章:国际化开发的相关知识。
第11章:通过分析一个项目的开发过程,展示Flutter的实际应用。
第12章:通过案例介绍App升级功能。
本书系统地讲解Flutter基础知识,这些都是在实际项目中经常会遇到的,既适合初学者,也适合专业技术人员。当然,如果读者有移动端或者前端开发经验,阅读起来体验会更好。本书各章内容相对独立,可以顺序阅读,也可以参照目录阅读需要的内容。
由于篇幅所限,本书中大多数示例代码都只是部分核心代码,完整代码可到GitHub下载,地址为https:github.com781238222flutter_examples。
致谢
首先感谢机械工业出版社吴怡编辑的耐心指点及帮助,在本书写作过程中吴怡编辑提供了非常专业的建议,并对本书进行了严格的审读。
然后要特别感谢我的爱人。2020年的新年是特殊的,新冠疫情给我们带来了巨大的困难,我的爱人作为一名医务工作者奋斗在疫情第一线,给我极大的鼓舞。没有她的勇敢和付出,本书也没有办法顺利到达你的手上。最后祝愿人类早日战胜病毒。
作者
于2020年春节
|
|