编辑推荐
★★本书和市面上绝大多数理论堆砌的书不同,以有趣的实例结合通俗易懂的讲解带领读者在感受到开发乐趣的同时学习到核心有用的知识。★★本书创新地引入了扫描二维码查看动图的功能,让纸质图书也能和读者交互起来,提升阅读的乐趣。我相信一张动图的表达效果胜过100个字,相信读者到时也会“一目了然”。★★本书系统而全面,从 Android 开发工具的安装、实用技巧到 Android 的布局、控件、组件、存储、网络等,涵盖 Android 开发的方方面面,一本书即可带领你充分领略 Android 开发的魅力。 ;
内容简介
本书内容系统全面,采用层层递进的方式进行讲解,让读者理解起来更为容易。全书分为10章,主要包括Android Studio的常用操作和技巧、Android的属性和布局、Android的基础控件、Android的系统组件、Android几种常用的数据存储方式、Android动画、Android网络、Android手机的基本功能及多媒体操作等。 另外,本书还创新地引入了扫描二维码查看动态图的功能,让纸质图书也能和读者交互起来,提升阅读的乐趣。本书适用于广大初、中级Android开发者。对于初级开发者,本书对常用核心的基础知识通过实例的形式进行了系统的讲解,保证初学者学习后可迅速上手进行Android应用开发;对于中级开发者,本书有助于查缺补漏、夯实基础。另外,本书还可以作为高等学校电子信息类专业和计算机类专业本科生的教材以及Android应用开发技术人员的参考书。
作者简介
张亚运江苏徐州人,研究生毕业于南京邮电大学,目前就职于国内知名的手机厂商,从事Android系统的深度定制工作。热爱写作和阅读,获得CSDN认证专家称号,同时也是极客学院Wiki专栏作家和百度阅读专栏作家,代表作有电子书《Android百战经典》《Android控件操作二十四章经》,目前已上线百度阅读和亚马逊。CSDN博客:http://blog.csdn.net/yayun0516 ;
新浪博客;AndroidTip微信公众号:Android 学习交流
目录
目录
第1章 认识Android  ; ; ;001
1.1 Android 系统  ; ; ;001
1.1.1 Android的系统架构  ; ; ;001
1.1.2 Android 的历史  ; ; ;002
1.1.3 Android 系统的优势  ; ; ;002
1.2 Android Studio安装  ; ; ;004
1.2.1 Android Studio安装  ; ; ;004
1.2.2 SDK更新  ; ; ;005
1.3 第一个Android项目  ; ; ;005
1.3.1 创建一个新项目  ; ; ;005
1.3.2 创建Android模拟器  ; ; ;007
第2章 Android Studio使用技巧  ; ; ;010
2.1 Android Studio基本配置  ; ; ;010
2.1.1 改变主题  ; ; ;010
2.1.2 改变字体大小和样式  ; ; 011
2.1.3 改变Logcat窗口字体、
主题 013
2.1.4 显示行号 015
2.1.5 自动导包 016
2.2 Android Studio常用快捷键 016
2.2.1 Ctrl组合快捷键 016
2.2.2 Ctrl Alt组合快捷键 020
2.2.3 Ctrl Shift组合快捷键 022
2.2.4 其他组合快捷键 024
2.3 Android Studio 调试 026
2.3.1 Logcat调试 026
2.3.2 断点调试 027
2.3.3 高级调试 029
第3章 Android属性和布局 032
3.1 Android项目文件结构 032
3.1.1 布局属性 032
3.1.2 配置属性 034
3.1.3 其他文件 036
3.2 Android 布局属性值 037
3.2.1 Android padding
属性用法 038
3.2.2 Android margin属性用法 038
3.3 Android布局之线性布局——
LinearLayout 041
3.3.1 LinearLayout基础用法 041
3.3.2 LinearLayout嵌套 043
3.4 Android线性布局的重要属性 045
3.4.1 gravity属性 045
3.4.2 layout_weight属性 048
3.4.3 weightSum属性 052
3.5 Android布局之相对布局——RelativeLayout 053
3.6 Android布局之帧布局——FrameLayout 056
3.7 Android布局优化 059
3.7.1 过度绘制 059
3.7.2 布局优化之include标签 061
第4章 Android基础控件操作
实战 064
4.1 炫酷之星——TextView控件 064
4.1.1 常用属性介绍 064
4.1.2 TextView实战演练 064
4.2 用户之窗——EditText控件 069
4.2.1 常用属性介绍 069
4.2.2 EditText 实战演练 070
4.2.3 EditText 实战进阶 074
4.3 交互之王——Button控件 078
4.3.1 Button单击事件响应 078
4.3.2 clickable属性设置无效
分析 084
4.3.3 Button实战进阶 086
4.4 执行中的指示器——ProgressBar 088
4.4.1 ProgressBar样例 088
4.4.2 ProgressBar基础用法 089
4.4.3 ProgressBar模拟下载 093
4.5 对话框之父——Dialog 095
4.5.1 AlertDialog 096
4.5.2 单选和多选对话框 099
4.5.3 ProgressDialog进度
对话框 101
4.5.4 定制对话框 104
第5章 Android控件进阶操作
实战 108
5.1 控之经典——ListView 108
5.1.1 ArrayAdapter适配器 109
5.1.2 SimpleAdapter适配器 110
5.1.3 BaseAdapter适配器 112
5.2 控之经典——ListView进阶 116
5.3 控之经典——GridView 121
5.4 控之经典——GridView进阶 126
5.4.1 GridView动态图删除
子项 126
5.4.2 GridView动态图增加
子项 130
5.5 新控件——RecyclerView控件 132
5.5.1 RecyclerView线性布局 134
5.5.2 RecyclerView网格布局 137
5.5.3 RecyclerView瀑布流布局 137
5.6 多页面切换器——ViewPager
控件 139
5.6.1 ViewPager的基本用法 140
5.6.2 ViewPager导航条 143
第6章 Android系统组件操作
实战 148
6.1 Activity生命周期 148
6.2 指向器——Intent 152
6.3 指向器——Intent隐式启动方式 156
6.4 Mini型Activity——Fragment 160
6.4.1 静态方式 160
6.4.2 动态方式 162
6.5 Mini型Activity——Fragment
生命周期 166
6.6 FragmentPagerAdapter&FragmentStatePagerAdapter 172
6.6.1 FragmentPagerAdapter
实现页面切换 173
6.6.2 FragmentStatePagerAdapter
实现页面切换 176
6.7 Android广播接收器之BroadcastReceiver 179
6.7.1 静态注册
BroadcastReceiver 179
6.7.2 动态注册
BroadcastReceiver 180
6.7.3 广播接收器BroadcastReceiver实用实例 182
6.8 Android自定义广播Broadcast 186
6.8.1 普通广播发送和接收
实例 187
6.8.2 有序广播发送和接收
实例 188
6.9 Android Service——startService和bindService 191
6.9.1 startService启动服务 192
6.9.2 bindService启动服务 195
第7章 Android存储操作实战 200
7.1 轻型存储器——
SharedPreferences 200
7.1.1 SharedPreferences
基本用法 200
7.1.2 SharedPreferences
实现自动登录功能 204
7.2 Android数据库SQLite 209
7.2.1 SQLiteOpenHelper类 210
7.2.2 SQLiteDatabase类 212
7.3 数据中心——ContentProvider 218
第8章 Android动画操作实战 223
8.1 Android传统动画——
Tween(补间动画) 223
8.1.1 AlphaAnimation——
渐变动画 224
8.1.2 RotateAnimation——
旋转动画 229
8.1.3 ScaleAnimation——
尺寸动画 232
8.1.4 TranslateAnimation——
位移动画 235
8.2 Android传统动画进阶 238
8.2.1 动画插值器Interpolator 238
8.2.2 动画监听器
AnimationListener 241
8.2.3 动画集 AnimationSet 243
8.2.4 LayoutAnimationController
组件动画 246
8.3 Android传统动画——Frame Animation(帧动画) 248
8.4 Android属性动画——
ObjectAnimator 252
8.4.1 属性动画与传统动画
的区别 252
8.4.2 旋转动画 254
8.4.3 尺寸动画 254
8.4.4 渐变动画 254
8.4.5 XML方式实现属性动画 257
8.5 Android属性动画——
ValueAnimator 259
8.6 Android属性动画集 262
8.6.1 简单的组合方式 262
8.6.2 PropertyValuesHolder
方式 264
8.6.3 AnimatorSet 方式 265
8.7 Android属性动画实现浮动菜单 266
第9章 Android网络操作实战 271
9.1 Android网络核心控件WebView 271
9.1.1 简单的WebView 271
9.1.2 丰富WebView功能 273
9.2 WebView滚动事件 276
9.2.1 WebView滚动监听
的实现 276
9.2.2 WebView一键回到
顶部功能实现 278
9.2.3 WebView退出记忆
功能实现 280
9.2.4 WebView联合滚动实现 281
9.3 网络连接类——
HttpURLConnection 283
9.3.1 HttpURLConnection
打印网页 284
9.3.2 HttpURLConnection
下载图片 287
9.3.3 HttpURLConnection
保存图片 290
9.4 Android Handler消息处理机制 294
9.4.1 消息类Message 295
9.4.2 消息处理类Handler 295
9.4.3 Handler实现倒计时功能 298
9.4.4 Handler延迟操作 301
9.4.5 Handler postDelay
实现循环调用 303
9.4.6 Looper用法 304
9.5 Android 异步操作类AsyncTask 307
9.5.1 AsyncTask基本用法 308
9.5.2 AsyncTask实用实例 310
第10章 Android手机基本功能
及多媒体操作实战 315
10.1 Android 拨打电话功能实例 315
10.2 Android 发送短信功能实例 319
10.2.1 直接发送短信 320
10.2.2 跳转到短信发送界面 322
10.3 Android 播放音乐功能实例 323
10.4 Android 播放视频功能实例 329
10.5 Android录制音频功能实例 335
10.6 Android 拍照功能实例 341
10.6.1 Intent方式 342
10.6.2 借助Camera类 344
媒体评论
评论
前沿
前言
张亚运
不知不觉,Android伴随我已经走过了四五个年头,它是忠实的伙伴、可靠的朋友。当初学习Android起源于对移动互联网事业的憧憬和向往,一旦进入Android的世界就变得一发不可收拾。在移动互联网事业如火如荼的今天,富有聪明才智、充沛精力的年轻人不在此开辟一片属于自己的天地,也许会成为日后一大憾事。研究生期间,在研究学习Android之余喜欢将自己的学习总结以博客的形式发布到CSDN,本意为自己记录学习点滴之用,无意中竟获得了一些关注和支持,也因此结交了很多志同道合的朋友。当然,期间也有一些出版社和培训机构的朋友找过我,也就有了后来出版了两本电子书《Android百战经典》和《Android控件操作之二十四章经》。这两本书的出版激发了我持续写作的兴趣,写作的过程是总结的过程、创作的过程,也是提高的过程。脑中的知识在笔尖流淌,智慧的火花在指尖碰撞。写作并不一定是专业作家才可以做的事,只要坚持写作、总结,相信你也可以做到。“兴趣是最好的老师”,培养兴趣是做事前的第一步,当然想让无趣的事情强制变得有趣也是不可能的一件事。我认为开发本身是一件非常有趣的事情,记得第一次为一个Button添加了单击事件监听,当其成功响应的时候是多么令人欣喜,我第一次真正操控了机器!最能让人感到愉悦的应该就是操控感了,在现实的世界里想要操控别人已经变得不可能,在代码的世界里,你就是“King of the World”!本书告别枯燥繁冗的理论讲解,能用代码说话的坚决不用文字,同样,能用图表表达的地方尽量避免文字。我相信,密密麻麻的文字往往是吓退读者的罪魁祸首。本书的样例都是笔者多年总结、积累的非常实用而又有趣的实例,这些实例都是围绕Android最核心、最常用的知识点展开,让读者在感到有趣的同时接收新鲜知识的灌溉。本书适用对象本书适用于初中级Android开发者。对于初级开发者。本书对常用核心的基础知识通过实例的形式进行了系统的讲解,保证一本书即可上手进行简单Android应用的开发;对于中级开发者,本书有助于查缺补漏、夯实基础。我也相信,阅读有趣的实例可以为开发者带来新的灵感。本书还适用于在开发道路上犹豫不觉得小白们,相信你搭上了这辆车,一定不会后悔。本书特色本书和市面上绝大多数理论堆砌的书不同,以有趣的实例结合通俗易懂的讲解带领读者在感受到开发乐趣的同时学习到核心有用的知识。本书创新地引入了扫描二维码查看动态图的功能,让纸质图书也能和读者交互起来,提升阅读的乐趣。我相信一张动态图的表达效果胜过一百个字,相信读者到时也会“一目了然”。本书系统而全面,从Android开发工具的安装、实用技巧到Android的布局、控件、组件、存储、网络等,涵盖Android开发的方方面面,一本书即可带领你充分领略Android开发的魅力。本书基于最新的Android 7.0和最新的Android Studio 2.2.3进行开发和讲解。本书内容本书内容系统全面,采用层层递进的方式进行讲解,让读者理解起来更为容易。本书一共分成10章,同时每章的内容也都是按照难度的递增进行讲解,让读者有个容易的开始同时也拥有一个充实的结尾。第1、2章主要对Android和Android Studio进行介绍,着重对Android Studio的常用操作和技巧进行了详细讲解,开发者熟练使用IDE可以有效提升开发效率、避免低级错误的发生。第3章主要对Android的属性和布局进行讲解。属性和布局是Android开发中最基本的部分,这也是检验一名Android开发者是否合格的最低标准。这部分主要讲解几个核心属性和核心布局方式的使用,读者可以认真学习、总结、理解。第4、5章主要对Android基础控件进行讲解。控件运用相当于武术修炼中的“外功”,控件的方法也可以认为是武林秘笈中的各个招式,对于核心控件的常用方法要予以熟练理解并掌握,这两章主要结合有趣实用的例子进行讲解,相信读者不会感到枯燥无味。第6章对Android系统组件进行详细的讲解。系统组件是Android的根基,所有的应用都围绕基本系统组件展开,对系统组件的深入学习和理解是修炼“内功”的过程,也是初级开发者和中高级开发者拉开距离的部分,读者要充分重视这部分内容。第7章主要讲解Android几种常用的存储数据方式,通过经典实例的方式向读者讲解常用存储方法的使用。第8章对Android动画进行了讲解。没有动画过渡的应用是僵硬、死板的。如今的Android应用无一例外地在交互上添加了动画。尝试着在你的应用中添加动画,它会让交互过渡更平滑,用户体验更棒。第9章对Android网络进行讲解。没有网络的Android手机就好像鱼儿离开了水,因此,Android开发者在开发过程中都会不可避免地涉及到网络操作。第10章主要对Android手机的基本功能及多媒体进行实战操作。与功能手机相比,智能手机最鲜明的特点即是其人性化的基本功能和丰富的媒体功能。本章对常用API进行了系统的讲解。本书的知识比较系统,建议读者按照章节的顺序进行阅读,循序渐进地掌握Android核心知识。打开本书,你已经迈开了成功的一小步。另外,全书在描述中有中英混用的描述,凡是中英混用的都是些特定术语,无需统一。致谢感谢清华大学出版社的编辑,没有她的积极指导和帮助,就没有这本书的诞生;感谢在编写过程中给予指导的各位志同道合的朋友,是你们让这本书更具活力;最后还要感谢我的爸爸妈妈,感谢他们不遗余力的付出和无微不至的关怀。
张亚运
免费在线读
第5章 Android控件进阶操作实战5.1 控之经典——ListViewListView是最经典的控件之一,虽然现在其江山地位不稳,将要被RecylerView取代,但设计理念是很经典的,而且很多程序员还是习惯了ListView,因此我们还需要对ListView进行深入学习。ListView内容非常多,读者要有足够的耐心进行学习,每一个功能点都有可能应用到项目中。ListView经常被用在列表显示上,每一个列表项都具有相同的布局,一个ListView通常都有三个要素组成:ListView控件。适配器类,用到了设计模式中的适配器模式,它是视图和数据之间的桥梁,负责提供对数据的访问,生成每一个列表项对应的View。常用的适配器类有ArrayAdapter、SimpleAdapter和SimpleCursorAdapter。数据源。当然最重要、最复杂的部分就是适配器类的编写和设计,在一些复杂的界面,常常需要对适配器类进行相关逻辑处理。ListView的常用属性如表5.1所示。表5.1 ListView的常用属性属 性 说 明android:divider 子项分割线android:dividerHeight 分割线高度android:listSelector 子项单击效果android:scrollbars 滑动条
ListView的常用方法如表5.2所示。表5.2 ListView的常用方法方 法 说 明addFooterView(View v) 在列表尾部加入一个ViewaddHeaderView(View v) 在列表头部加入一个ViewsetAdapter(ListAdapter adapter) 设置适配器setDivider(Drawable divider) 设置子项分隔栏setDividerHeight(int height) 设置分隔栏高度
5.1.1 ArrayAdapter适配器ListView的数据渲染都需要借助适配器来完成,首先看一下结合最简单的ArrayAdapter来实现ListView。主布局文件(activity_main.xml)代码如下:
上述代码设置了divider属性,在ListView的子项之间添加分隔栏;设置了dividerHeight属性,决定了分隔栏的高度;将scrollbars属性的值设置为none表示上下拖动时在右侧没有滑动条。MainActivity.java代码如下:
创建一个ArrayAdapter对象需要传入三个参数:上下文对象、子项布局id(用到了Android内置的list布局)、数据源。上述代码中ArrayAdapter的数据源传入的是字符数组,最后调用ListView的setAdapter方法为ListView设置适配器。运行实例,如图5.1所示。可以看出,每个子项之间存在分隔栏,上下拖动ListView时最右边也不会有滑动条出现。
Android开发入门百战经典 pdf下载声明
本pdf资料下载仅供个人学习和研究使用,不能用于商业用途,请在下载后24小时内删除。如果喜欢,请购买正版