失效链接处理 |
Android 10 Kotlin编程通俗演义 PDF 下载 下载地址:
版权归出版社和原作者所有,链接已删除,请购买正版
用户下载说明:
电子版仅供预览,下载后24小时内务必删除,支持正版,喜欢的请购买正版书籍:
http://product.dangdang.com/1072748367.html
相关截图: 资料简介: Google已经将Kotlin列为Android开发*开发语言。Kotlin与Java无缝兼容,同时Kotlin作为一门新语言,其语法极其简洁精练,稍微熟悉之后,开发效率立即会有明显提升。 本书分为20章,严格参考Android 10官方开发文档,全面讲解利用Kotlin开发Android应用的各种技术,章节精心安排、循序渐进,内容准确、翔实、全面而又通俗易懂,绝不是术语的罗列,也绝不是不知所云的翻译。 本书既适合Android应用开发初学者、转向Kotlin编程的Android应用开发人员阅读,也适合高等院校和培训学校计算技术相关专业的师生参考。 资料目录:
第1章 Kotlin快速入门 1
1.1 开发环境配置 1
1.1.1 安装JDK 1
1.1.2 安装IDE 2
1.1.3 创建个Kotlin工程 3
1.1.4 工程组织结构 5
1.1.5 添加代码 6
1.1.6 运行程序 6
1.2 大道至简 8
1.3 万变不离其宗 10
1.4 新式语法特征 11
1.5 Kotlin独特语法 17
1.6 作用域函数 23
1.6.1 let() 24
1.6.2 run() 24
1.6.3 apply() 25
1.6.4 also() 25
1.6.5 with() 26
1.7 新式语法特点总结 26
第2章 Android系统简介 27
第3章 Android开发环境搭建 29
3.1 下载Android Studio 29
3.2 安装Android Studio 30
3.3 配置Android SDK 31
3.4 四项原则 34
第4章 个Kotlin App 35
4.1 运行App 37
4.1.1 在真实设备上调试 38
4.1.2 配置虚拟机 40
4.2 虚拟机加速 42
4.2.1 在BIOS中开启虚拟化
支持 43
4.2.2 安装HAXM 43
4.3 App的样子 44
4.4 工程里面有什么 44
第5章 UI资源与Layout 46
5.1 Layout 46
5.2 改动Layout 49
5.2.1 添加图像资源 52
5.2.2 文件或文件夹改名 53
5.2.3 显示自己的图像 53
5.2.4 XML小解 56
5.2.5 Layout源码解释 57
5.3 ConstraintLayout 58
5.3.1 ConstraintLayout的原理 59
5.3.2 子控件在ConstraintLayout
中居左或居右 60
5.3.3 子控件在ConstraintLayout
中横向居中 61
5.3.4 子控件在ConstraintLayout
中居中偏左 62
5.3.5 子控件A在子控件B的
上面 62
5.3.6 子控件A与子控件B左边
对齐 63
5.3.7 设置子控件的宽和高 64
5.3.8 子控件的宽和高保持一定
比例 65
5.4 设计登录页面 67
5.4.1 添加用户名输入控件 67
5.4.2 添加密码输入控件 69
5.4.3 添加登录按钮 70
5.4.4 完成收工 70
5.5 让内容滚动 72
5.5.1 添加ScrollView作为外层
容器 73
5.5.2 禁止旋转 75
5.5.3 为横屏和竖屏分别创建Layout 76
5.5.4 让内容居中 77
5.6 添加新的Layout资源 77
第6章 各种Layout控件 79
6.1 FrameLayout 79
6.2 LinearLayout 79
6.2.1 纵向LinearLayout中子控件
横向居中 80
6.2.2 子控件均匀分布 81
6.2.3 子控件按比例分布 81
6.2.4 用LinearLayout实现登录
界面 83
6.3 GridLayout 85
6.4 TableLayout 87
第7章 操作控件 89
7.1 在Activity中创建界面 89
7.1.1 类R 90
7.1.2 类Activity 90
7.1.3 四大组件 90
7.2 在代码中操作控件 91
7.2.1 获取控件 91
7.2.2 响应View的事件 93
7.2.3 添加依赖库 93
7.2.4 显示提示 95
7.2.5 完成收工 97
第8章 Activity导航 98
8.1 创建注册页面 98
8.2 启动注册页面 100
8.2.1 修改页面标题 100
8.2.2 MainActivity源码 101
8.3 设计注册页面 102
8.4 响应注册按钮进行注册 106
8.5 获取页面返回的数据 107
8.5.1 避免常量重复出现 108
8.5.2 日志输出 110
8.5.3 将返回的数据设置到
控件中 111
8.6 ActionBar上的返回图标 111
8.6.1 原生Action Bar与MaterailDesign Action
Bar 112
8.6.2 登录页面显示返回图标 112
8.6.3 注册页面显示返回图标 114
8.7 ScrollView与软键盘 114
8.8 源码 115
8.8.1 MainActivity 115
8.8.2 RegisterActivity.kt 117
第9章 Theme 119
第10章 Fragment 121
10.1 弄巧成拙的Activity 121
10.2 使用Fragment 123
10.3 改造登录页面 125
10.3.1 添加layout文件 125
10.3.2 改变layout文件的
内容 126
10.3.3 添加Fragment类 126
10.3.4 将Fragment放到
Activity中 130
10.3.5 创建注册Fragment 132
10.3.6 显示RegisterFragment 133
10.3.7 通过AppBar控制页面
导航 133
10.3.8 实现RegisterFragment的
逻辑 134
10.3.9 从LoginFragment中读出
用户名和密码 136
10.3.10 Fragment的生命周期 137
10.3.11 Fragment状态保存与
恢复 137
10.3.12 总结 138
10.4 对话框 141
10.4.1 创建子类 142
10.4.2 显示对话框 143
10.4.3 响应返回键 144
第11章 菜单 145
11.1 添加菜单资源 145
11.2 重写onCreateOptionsMenu() 147
11.3 嵌套菜单 148
11.4 菜单项分组 149
11.5 响应菜单项 150
11.6 其他菜单类型 151
第12章 动画 152
12.1 动画原理 152
12.2 三种动画 153
12.3 视图动画 154
12.3.1 绕着中心转 155
12.3.2 不要反向转 155
12.3.3 举一反三 156
12.3.4 动画组 157
12.4 属性动画 158
12.4.1 旋转动画 158
12.4.2 动画组 159
12.5 动画资源 163
12.6 Layout动画 165
12.6.1 向Layout控件添加
子控件 165
12.6.2 ViewGroup 167
12.6.3 设置排版动画 167
12.7 转场动画 169
12.7.1 使用默认转场动画 169
12.7.2 自定义转场动画 169
第13章 自定义控件 174
13.1 创建一个Custom View 175
13.2 Custom View类 176
13.2.1 构造方法 176
13.2.2 onDraw()方法 177
13.2.3 init()方法 179
13.2.4 自定义属性 182
13.2.5 作画 184
13.3 创建圆形图像控件 185
13.3.1 将Drawable转成
Bitmap 188
13.3.2 变换矩阵 189
13.3.3 自定义属性的改动 190
13.3.4 类的所有代码 191
第14章 RecyclerView 197
14.1 基本用法 197
14.2 显示多条简单数据 198
14.2.1 添加新页面 198
14.2.2 创建Adapter子类 200
14.2.3 设置RecyclerView 202
14.2.4 用集合保存数据 203
14.3 让子控件复杂起来 204
14.3.1 创建行Layout资源 204
14.3.2 应用条目Layout资源 206
14.3.3 明显区分每一行 207
14.3.4 使用音乐信息类 209
14.4 增删改 210
14.4.1 增加一条数据 210
14.4.2 其他操作 212
14.5 局部刷新 212
14.6 响应条目选择 213
14.7 显示不同类型的行 214
14.7.1 添加新条目数据类 214
14.7.2 添加条目Layout 215
14.7.3 创建新的ViewHolder
类 216
14.7.4 区分不同的View Type 216
第15章 模仿QQ App界面 218
15.1 创建新的Android项目 218
15.2 设计登录页面 218
15.2.1 创建登录Fragment 219
15.2.2 设计登录界面 220
15.2.3 UI代码 221
15.2.4 显示登录历史 224
15.2.5 设计历史菜单项 228
15.2.6 实现显示历史的代码 229
15.2.7 selector资源 229
15.2.8 layer_list资源 230
15.2.9 定制控件背景 231
15.2.10 动画显示菜单 231
15.2.11 让菜单消失 233
15.2.12 响应选中菜单项 234
15.3 QQ主页面设计 235
15.3.1 设置导航栏 237
15.3.2 设置Tab栏 239
15.3.3 改变Tab Item图标 241
15.3.4 为ViewPager添加
内容 242
15.3.5 ViewPager与TabLayout
联动 245
15.3.6 使用SpannableString显示
图像 247
15.3.7 禁止ViewPager滑动
翻页 251
15.3.8 创建“消息”页 252
15.3.9 显示气泡菜单 258
15.3.10 抽屉效果 271
15.3.11 创建“联系人”页 286
15.3.12 创建“动态”页 303
15.3.13 实现搜索功能 304
第16章 实现聊天界面 313
16.1 原理分析 313
16.2 创建聊天Activity 313
16.2.1 activity_chat.xml 313
16.2.2 类ChatActivity 316
16.2.3 显示消息的Layout 318
16.3 启动ChatActivity 320
16.4 模拟聊天 321
第17章 多线程 323
17.1 线程与进程的概念 323
17.2 创建线程 324
17.3 创建线程的另一种方式 325
17.4 多个线程操作同一个对象 326
17.5 单线程中异步执行 329
17.6 多线程间同步执行 330
17.7 在其他线程中操作界面 330
17.8 HandlerThread 333
17.9 线程的退出 333
第18章 网络通信 336
18.1 网络基础知识 336
18.1.1 IP地址与域名 336
18.1.2 TCP与UDP 337
18.1.3 HTTP协议 337
18.2 Android HTTP通信 338
18.3 使用“异步任务” 341
18.3.1 定义异步任务类 341
18.3.2 使用异步任务类 342
18.3.3 完善异步任务类 344
18.3.4 异步任务的退出 349
18.4 使用OkHttp进行网络通信 351
18.4.1 使用OkHttp下载图像 352
18.4.2 创建Web服务端 354
18.4.3 使用OkHttp下载数据 355
18.4.4 JSON转对象 357
18.4.5 使用OkHttp上传文件 358
18.5 使用Retrofit进行网络通信 360
18.5.1 加入Retrofit的依赖项 360
18.5.2 用Retrofit下载文本 361
18.5.3 用Retrofit下载图像 363
18.5.4 用Retrofit上传图像 364
第19章 异步调用库RxJava 366
19.1 小试牛刀 366
19.2 精简发送代码 369
19.3 精简接收代码 370
19.4 map与flatmap 371
19.5 并行map 373
19.6 RxJava与Retrofit合体 374
19.7 RxJava Retrofit合体并行执行 376
19.8 RxJava与Activity的配合 377
第20章 实现聊天功能 378
20.1 添加注册功能 378
20.1.1 创建注册Activity 378
20.1.2 设计注册页面 379
20.1.3 显示Bottom Sheet 381
20.1.4 拍照 384
20.1.5 提交注册信息 392
20.2 改进登录功能 399
20.2.1 创建Retrofit相关实例 399
20.2.2 添加Fragment回调
接口 400
20.2.3 发出登录请求 401
20.2.4 保存自己的信息 403
20.2.5 防止按钮重复单击 403
20.2.6 显示进度条 404
20.3 获取联系人 406
20.3.1 修改Retrofit接口 407
20.3.2 使用RxJava定时器 407
20.3.3 添加Fragment回调
接口 408
20.3.4 获取并显示联系人 408
20.3.5 出错重试 410
20.3.6 停止网络连接 411
20.4 发出聊天消息 413
20.4.1 定义承载消息的类 413
20.4.2 在接口中添加方法 414
20.4.3 在ChatActivity中初始化Retrofit 414
20.4.4 上传消息 415
20.4.5 失败重传 416
20.5 获取聊天消息 417
20.5.1 为ChatService增加
方法 417
20.5.2 发出请求 417
|