计算机
类型
可以朗读
语音朗读
418千字
字数
2020-05-01
发行日期
展开全部
主编推荐语
本书全面讲解Android开发技术,通俗易懂,循序渐进,案例引导。
内容简介
本书分为20章,严格参考Android官方开发文档,全面讲解Android开发中的各种技术,内容准确,章节循序渐进,精心安排,内容详实全面,而又通俗易懂,绝不是术语的罗列,绝不是不知所云的翻译。本书特点:通俗易懂,循序渐进,以项目驱动,所有技术点都以具体案例引出,杜绝抽象、杜绝空洞。
目录
- 版权信息
- 内容简介
- 前言
- 写作背景
- 本书导读
- 示例源码下载
- 读者对象
- 致谢
- 第1章 Kotlin快速入门
- 1.1 开发环境配置
- 1.1.1 安装JDK
- 1.1.2 安装IDE
- 1.1.3 创建第一个Kotlin工程
- 1.1.4 工程组织结构
- 1.1.5 添加代码
- 1.1.6 运行程序
- 1.2 大道至简
- 1.3 万变不离其宗
- 1.4 新式语法特征
- 1.5 Kotlin独特语法
- 1.6 作用域函数
- 1.6.1 let()
- 1.6.2 run()
- 1.6.3 apply()
- 1.6.4 also()
- 1.6.5 with()
- 1.7 新式语法特点总结
- 第2章 Android系统简介
- 第3章 Android开发环境搭建
- 3.1 下载Android Studio
- 3.2 安装Android Studio
- 3.3 配置Android SDK
- 3.4 四项原则
- 第4章 第一个Kotlin App
- 4.1 运行App
- 4.1.1 在真实设备上调试
- 4.1.2 配置虚拟机
- 4.2 虚拟机加速
- 4.2.1 在BIOS中开启虚拟化支持
- 4.2.2 安装HAXM
- 4.3 App的样子
- 4.4 工程里面有什么
- 第5章 UI资源与Layout
- 5.1 Layout
- 5.2 改动Layout
- 5.2.1 添加图像资源
- 5.2.2 文件或文件夹改名
- 5.2.3 显示自己的图像
- 5.2.4 XML小解
- 5.2.5 Layout源码解释
- 5.3 ConstraintLayout
- 5.3.1 ConstraintLayout的原理
- 5.3.2 子控件在ConstraintLayout中居左或居右
- 5.3.3 子控件在ConstraintLayout中横向居中
- 5.3.4 子控件在ConstraintLayout中居中偏左
- 5.3.5 子控件A在子控件B的上面
- 5.3.6 子控件A与子控件B左边对齐
- 5.3.7 设置子控件的宽和高
- 5.3.8 子控件的宽和高保持一定比例
- 5.4 设计登录页面
- 5.4.1 添加用户名输入控件
- 5.4.2 添加密码输入控件
- 5.4.3 添加登录按钮
- 5.4.4 完成收工
- 5.5 让内容滚动
- 5.5.1 添加ScrollView作为最外层容器
- 5.5.2 禁止旋转
- 5.5.3 为横屏和竖屏分别创建Layout
- 5.5.4 让内容居中
- 5.6 添加新的Layout资源
- 第6章 各种Layout控件
- 6.1 FrameLayout
- 6.2 LinearLayout
- 6.2.1 纵向LinearLayout中子控件横向居中
- 6.2.2 子控件均匀分布
- 6.2.3 子控件按比例分布
- 6.2.4 用LinearLayout实现登录界面
- 6.3 GridLayout
- 6.4 TableLayout
- 第7章 操作控件
- 7.1 在Activity中创建界面
- 7.1.1 类R
- 7.1.2 类Activity
- 7.1.3 四大组件
- 7.2 在代码中操作控件
- 7.2.1 获取控件
- 7.2.2 响应View的事件
- 7.2.3 添加依赖库
- 7.2.4 显示提示
- 7.2.5 完成收工
- 第8章 Activity导航
- 8.1 创建注册页面
- include layout资源文件
- 8.2 启动注册页面
- 8.2.1 修改页面标题
- 8.2.2 MainActivity源码
- 8.3 设计注册页面
- 8.4 响应注册按钮进行注册
- 8.5 获取页面返回的数据
- 8.5.1 避免常量重复出现
- 8.5.2 日志输出
- 8.5.3 将返回的数据设置到控件中
- 8.6 ActionBar上的返回图标
- 8.6.1 原生Action Bar与MaterailDesign Action Bar
- 8.6.2 登录页面显示返回图标
- 8.6.3 注册页面显示返回图标
- 8.7 ScrollView与软键盘
- 8.8 源码
- 8.8.1 MainActivity
- 8.8.2 RegisterActivity.kt
- 第9章 Theme
- 第10章 Fragment
- 10.1 弄巧成拙的Activity
- 10.2 使用Fragment
- 10.3 改造登录页面
- 10.3.1 添加layout文件
- 10.3.2 改变layout文件的内容
- 10.3.3 添加Fragment类
- 10.3.4 将Fragment放到Activity中
- 10.3.5 创建注册Fragment
- 10.3.6 显示RegisterFragment
- 10.3.7 通过AppBar控制页面导航
- 10.3.8 实现RegisterFragment的逻辑
- 10.3.9 从LoginFragment中读出用户名和密码
- 10.3.10 Fragment的生命周期
- 10.3.11 Fragment状态保存与恢复
- 10.3.12 总结
- 10.4 对话框
- 10.4.1 创建子类
- 10.4.2 显示对话框
- 10.4.3 响应返回键
- 第11章 菜单
- 11.1 添加菜单资源
- 11.2 重写onCreateOptionsMenu()
- 11.3 嵌套菜单
- 11.4 菜单项分组
- 11.5 响应菜单项
- 11.6 其他菜单类型
- 第12章 动画
- 12.1 动画原理
- 12.2 三种动画
- 12.3 视图动画
- 12.3.1 绕着中心转
- 12.3.2 不要反向转
- 12.3.3 举一反三
- 12.3.4 动画组
- 12.4 属性动画
- 12.4.1 旋转动画
- 12.4.2 动画组
- 12.5 动画资源
- 12.6 Layout动画
- 12.6.1 向Layout控件添加子控件
- 12.6.2 ViewGroup
- 12.6.3 设置排版动画
- 12.7 转场动画
- 12.7.1 使用默认转场动画
- 12.7.2 自定义转场动画
- 第13章 自定义控件
- 13.1 创建一个Custom View
- 13.2 Custom View类
- 13.2.1 构造方法
- 13.2.2 onDraw()方法
- 13.2.3 init()方法
- 13.2.4 自定义属性
- 13.2.5 作画
- 13.3 创建圆形图像控件
- 13.3.1 将Drawable转成Bitmap
- 13.3.2 变换矩阵
- 13.3.3 自定义属性的改动
- 13.3.4 类的所有代码
- 第14章 RecyclerView
- 14.1 基本用法
- 14.2 显示多条简单数据
- 14.2.1 添加新页面
- 14.2.2 创建Adapter子类
- 14.2.3 设置RecyclerView
- 14.2.4 用集合保存数据
- 14.3 让子控件复杂起来
- 14.3.1 创建行Layout资源
- 14.3.2 应用条目Layout资源
- 14.3.3 明显区分每一行
- 14.3.4 使用音乐信息类
- 14.4 增删改
- 14.4.1 增加一条数据
- 14.4.2 其他操作
- 14.5 局部刷新
- 14.6 响应条目选择
- 14.7 显示不同类型的行
- 14.7.1 添加新条目数据类
- 14.7.2 添加条目Layout
- 14.7.3 创建新的ViewHolder类
- 14.7.4 区分不同的View Type
- 第15章 模仿QQ App界面
- 15.1 创建新的Android项目
- 15.2 设计登录页面
- 15.2.1 创建登录Fragment
- 15.2.2 设计登录界面
- 15.2.3 UI代码
- 15.2.4 显示登录历史
- 15.2.5 设计历史菜单项
- 15.2.6 实现显示历史的代码
- 15.2.7 selector资源
- 15.2.8 layer_list资源
- 15.2.9 定制控件背景
- 15.2.10 动画显示菜单
- 15.2.11 让菜单消失
- 15.2.12 响应选中菜单项
- 15.3 QQ主页面设计
- 15.3.1 设置导航栏
- 15.3.2 设置Tab栏
- 15.3.3 改变Tab Item图标
- 15.3.4 为ViewPager添加内容
- 15.3.5 ViewPager与TabLayout联动
- 15.3.6 使用SpannableString显示图像
- 15.3.7 禁止ViewPager滑动翻页
- 15.3.8 创建“消息”页
- 15.3.9 显示气泡菜单
- 15.3.10 抽屉效果
- 15.3.11 创建“联系人”页
- 15.3.12 创建“动态”页
- 15.3.13 实现搜索功能
- 第16章 实现聊天界面
- 16.1 原理分析
- 16.2 创建聊天Activity
- 16.2.1 activity_chat.xml
- 16.2.2 类ChatActivity
- 16.2.3 显示消息的Layout
- 16.3 启动ChatActivity
- 16.4 模拟聊天
- 第17章 多线程
- 17.1 线程与进程的概念
- 17.2 创建线程
- 17.3 创建线程的另一种方式
- 17.4 多个线程操作同一个对象
- 17.5 单线程中异步执行
- 17.6 多线程间同步执行
- 17.7 在其他线程中操作界面
- Handler
- 17.8 HandlerThread
- 17.9 线程的退出
- 第18章 网络通信
- 18.1 网络基础知识
- 18.1.1 IP地址与域名
- 18.1.2 TCP与UDP
- 18.1.3 HTTP协议
- 18.2 Android HTTP通信
- 18.3 使用“异步任务”
- 18.3.1 定义异步任务类
- 18.3.2 使用异步任务类
- 18.3.3 完善异步任务类
- 18.3.4 异步任务的退出
- 18.4 使用OkHttp进行网络通信
- 18.4.1 使用OkHttp下载图像
- 18.4.2 创建Web服务端
- 18.4.3 使用OkHttp下载数据
- 18.4.4 JSON转对象
- 18.4.5 使用OkHttp上传文件
- 18.5 使用Retrofit进行网络通信
- 18.5.1 加入Retrofit的依赖项
- 18.5.2 用Retrofit下载文本
- 18.5.3 用Retrofit下载图像
- 18.5.4 用Retrofit上传图像
- 第19章 异步调用库RxJava
- 19.1 小试牛刀
- 19.2 精简发送代码
- 19.3 精简接收代码
- 19.4 map与flatmap
- 19.5 并行map
- 19.6 RxJava与Retrofit合体
- 19.7 RxJava Retrofit合体并行执行
- 19.8 RxJava与Activity的配合
- 第20章 实现聊天功能
- 20.1 添加注册功能
- 20.1.1 创建注册Activity
- 20.1.2 设计注册页面
- 20.1.3 显示Bottom Sheet
- 20.1.4 拍照
- 20.1.5 提交注册信息
- 20.2 改进登录功能
- 20.2.1 创建Retrofit相关实例
- 20.2.2 添加Fragment回调接口
- 20.2.3 发出登录请求
- 20.2.4 保存自己的信息
- 20.2.5 防止按钮重复单击
- 20.2.6 显示进度条
- 20.3 获取联系人
- 20.3.1 修改Retrofit接口
- 20.3.2 使用RxJava定时器
- 20.3.3 添加Fragment回调接口
- 20.3.4 获取并显示联系人
- 20.3.5 出错重试
- 20.3.6 停止网络连接
- 20.4 发出聊天消息
- 20.4.1 定义承载消息的类
- 20.4.2 在接口中添加方法
- 20.4.3 在ChatActivity中初始化Retrofit
- 20.4.4 上传消息
- 20.4.5 失败重传
- 20.5 获取聊天消息
- 20.5.1 为ChatService增加方法
- 20.5.2 发出请求
展开全部
出版方
清华大学出版社
清华大学出版社成立于1980年6月,是由教育部主管、清华大学主办的综合出版单位。植根于“清华”这座久负盛名的高等学府,秉承清华人“自强不息,厚德载物”的人文精神,清华大学出版社在短短二十多年的时间里,迅速成长起来。清华大学出版社始终坚持弘扬科技文化产业、服务科教兴国战略的出版方向,把出版高等学校教学用书和科技图书作为主要任务,并为促进学术交流、繁荣出版事业设立了多项出版基金,逐渐形成了以出版高水平的教材和学术专著为主的鲜明特色,在教育出版领域树立了强势品牌。