更新时间:2021-06-15 15:30:19
封面
版权信息
版权声明
献词
如何学习Android开发
开发必备工具
致谢
第 1 章 Android开发初体验
1.1 Android开发基础
1.2 创建Android项目
1.3 Android Studio使用导航
1.4 用户界面设计
1.5 从布局XML到视图对象
1.6 部件的实际应用
1.7 创建提示消息
1.8 使用模拟器运行应用
1.9 深入学习:Android编译过程
1.10 关于挑战练习
1.11 挑战练习:定制toast消息
第 2 章 Android与MVC设计模式
2.1 创建新类
2.2 Android与MVC设计模式
2.3 更新视图层
2.4 更新控制器层
2.5 添加图标资源
2.6 屏幕像素密度
2.7 在物理设备上运行应用
2.8 挑战练习:为TextView添加监听器
2.9 挑战练习:添加后退按钮
2.10 挑战练习:从按钮到图标按钮
第 3 章 activity的生命周期
3.1 旋转GeoQuiz应用
3.2 activity状态与生命周期回调
3.3 日志跟踪理解activity生命周期
3.4 activity生命周期如何响应用户操作
3.5 设备配置改变与activity生命周期
3.6 深入学习:UI刷新与多窗口模式
3.7 深入学习:日志记录的级别与函数
3.8 挑战练习:禁止一题多答
3.9 挑战练习:答题评分
第 4 章 UI状态的保存与恢复
4.1 引入ViewModel依赖
4.2 添加ViewModel
4.3 进程销毁时保存数据
4.4 ViewModel与保存实例状态
4.5 深入学习:Jetpack、AndroidX与架构组件
4.6 深入学习:解决问题要彻底
第 5 章 Android应用的调试
5.1 异常与栈跟踪
5.2 Android特有的调试工具
5.3 挑战练习:探索布局检查器
5.4 挑战练习:探索Android性能分析器
第 6 章 第二个activity
6.1 创建第二个activity
6.2 启动activity
6.3 activity间的数据传递
6.4 activity的使用与管理
6.5 挑战练习:堵住作弊漏洞
6.6 挑战练习:按题记录作弊状态
第 7 章 Android SDK版本与兼容
7.1 Android SDK版本
7.2 Android编程与兼容性问题
7.3 使用Android开发者文档
7.4 挑战练习:报告编译版本
7.5 挑战练习:限制作弊次数
第 8 章 UI fragment与fragment管理器
8.1 UI设计的灵活性需求
8.2 引入fragment
8.3 着手开发CriminalIntent
8.4 创建Crime数据类
8.5 创建UI fragment
8.6 托管UI fragment
8.7 采用fragment的应用架构
第 9 章 使用RecyclerView显示列表
9.1 添加新Fragment和ViewModel
9.2 添加RecyclerView
9.3 创建列表项视图布局
9.4 ViewHolder实现
9.5 使用Adapter填充RecyclerView
9.6 循环使用视图
9.7 清理绑定
9.8 响应点击
9.9 深入学习:ListView与GridView
9.10 挑战练习:RecyclerView的ViewType
第 10 章 使用布局与部件创建用户界面
10.1 初识ConstraintLayout布局
10.2 图形布局编辑器
10.3 使用ConstraintLayout
10.4 深入学习布局属性
10.5 深入学习:边距与内边距
10.6 深入学习:ConstraintLayout的发展动态
10.7 挑战练习:日期格式化
第 11 章 数据库与Room库
11.1 Room架构组建库
11.2 创建数据库
11.3 定义数据库访问对象
11.4 使用仓库模式访问数据库
11.5 测试数据库访问
11.6 应用线程
11.7 使用LiveData